fix(infra): add logging to PlaidTransactionProcessor for transaction sync processing
This commit is contained in:
@@ -16,25 +16,29 @@ internal sealed class PlaidTransactionProcessor : IPlaidTransactionProcessor
|
|||||||
private readonly IPlaidAddedTransactionHandler _addedHandler;
|
private readonly IPlaidAddedTransactionHandler _addedHandler;
|
||||||
private readonly IPlaidModifiedTransactionHandler _modifiedHandler;
|
private readonly IPlaidModifiedTransactionHandler _modifiedHandler;
|
||||||
private readonly IPlaidRemovedTransactionHandler _removedHandler;
|
private readonly IPlaidRemovedTransactionHandler _removedHandler;
|
||||||
|
private readonly ILogger<PlaidTransactionProcessor> _logger;
|
||||||
|
|
||||||
private PlaidTransactionProcessor(
|
private PlaidTransactionProcessor(
|
||||||
IPlaidAddedTransactionHandler addedHandler,
|
IPlaidAddedTransactionHandler addedHandler,
|
||||||
IPlaidModifiedTransactionHandler modifiedHandler,
|
IPlaidModifiedTransactionHandler modifiedHandler,
|
||||||
IPlaidRemovedTransactionHandler removedHandler
|
IPlaidRemovedTransactionHandler removedHandler,
|
||||||
|
ILogger<PlaidTransactionProcessor> logger
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
_addedHandler = addedHandler;
|
_addedHandler = addedHandler;
|
||||||
_modifiedHandler = modifiedHandler;
|
_modifiedHandler = modifiedHandler;
|
||||||
_removedHandler = removedHandler;
|
_removedHandler = removedHandler;
|
||||||
|
_logger = logger;
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static PlaidTransactionProcessor From(
|
internal static PlaidTransactionProcessor From(
|
||||||
IPlaidAddedTransactionHandler addedHandler,
|
IPlaidAddedTransactionHandler addedHandler,
|
||||||
IPlaidModifiedTransactionHandler modifiedHandler,
|
IPlaidModifiedTransactionHandler modifiedHandler,
|
||||||
IPlaidRemovedTransactionHandler removedHandler
|
IPlaidRemovedTransactionHandler removedHandler,
|
||||||
|
ILogger<PlaidTransactionProcessor> logger
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return new(addedHandler, modifiedHandler, removedHandler);
|
return new(addedHandler, modifiedHandler, removedHandler, logger);
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static PlaidTransactionProcessor From(IServiceProvider provider)
|
internal static PlaidTransactionProcessor From(IServiceProvider provider)
|
||||||
@@ -42,7 +46,8 @@ internal sealed class PlaidTransactionProcessor : IPlaidTransactionProcessor
|
|||||||
return new(
|
return new(
|
||||||
provider.GetRequiredService<IPlaidAddedTransactionHandler>(),
|
provider.GetRequiredService<IPlaidAddedTransactionHandler>(),
|
||||||
provider.GetRequiredService<IPlaidModifiedTransactionHandler>(),
|
provider.GetRequiredService<IPlaidModifiedTransactionHandler>(),
|
||||||
provider.GetRequiredService<IPlaidRemovedTransactionHandler>()
|
provider.GetRequiredService<IPlaidRemovedTransactionHandler>(),
|
||||||
|
provider.GetRequiredService<ILogger<PlaidTransactionProcessor>>()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -69,6 +74,17 @@ internal sealed class PlaidTransactionProcessor : IPlaidTransactionProcessor
|
|||||||
cancellationToken
|
cancellationToken
|
||||||
).ConfigureAwait(false);
|
).ConfigureAwait(false);
|
||||||
|
|
||||||
|
_logger.LogInformation(
|
||||||
|
"Processed Plaid transactions sync for account {AccountId}: {NumAdded} of {TotalAdded} added, {NumModified} of {TotalModified} modified, {NumRemoved} of {TotalRemoved} removed",
|
||||||
|
account.Id,
|
||||||
|
numAdded,
|
||||||
|
syncResponse.Added.Count,
|
||||||
|
numModified,
|
||||||
|
syncResponse.Modified.Count,
|
||||||
|
numRemoved,
|
||||||
|
syncResponse.Removed.Count
|
||||||
|
);
|
||||||
|
|
||||||
return numAdded == syncResponse.Added.Count &&
|
return numAdded == syncResponse.Added.Count &&
|
||||||
numModified == syncResponse.Modified.Count &&
|
numModified == syncResponse.Modified.Count &&
|
||||||
numRemoved == syncResponse.Removed.Count;
|
numRemoved == syncResponse.Removed.Count;
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ public class PlaidTransactionProcessorTests
|
|||||||
private readonly Mock<IPlaidAddedTransactionHandler> _mockAddedHandler = new();
|
private readonly Mock<IPlaidAddedTransactionHandler> _mockAddedHandler = new();
|
||||||
private readonly Mock<IPlaidModifiedTransactionHandler> _mockModifiedHandler = new();
|
private readonly Mock<IPlaidModifiedTransactionHandler> _mockModifiedHandler = new();
|
||||||
private readonly Mock<IPlaidRemovedTransactionHandler> _mockRemovedHandler = new();
|
private readonly Mock<IPlaidRemovedTransactionHandler> _mockRemovedHandler = new();
|
||||||
|
private readonly Mock<ILogger<PlaidTransactionProcessor>> _mockLogger = new();
|
||||||
private readonly PlaidTransactionProcessor _sut;
|
private readonly PlaidTransactionProcessor _sut;
|
||||||
|
|
||||||
public PlaidTransactionProcessorTests()
|
public PlaidTransactionProcessorTests()
|
||||||
@@ -12,7 +13,8 @@ public class PlaidTransactionProcessorTests
|
|||||||
_sut = PlaidTransactionProcessor.From(
|
_sut = PlaidTransactionProcessor.From(
|
||||||
_mockAddedHandler.Object,
|
_mockAddedHandler.Object,
|
||||||
_mockModifiedHandler.Object,
|
_mockModifiedHandler.Object,
|
||||||
_mockRemovedHandler.Object
|
_mockRemovedHandler.Object,
|
||||||
|
_mockLogger.Object
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user