Skip to content

#41 Specialise AfterSaveAsync hooks for void and value results - #42

Merged
dannygoodacre merged 4 commits into
mainfrom
41-refactor-aftersaveasync-hooks-to-use-strongly-typed-success-payloads
Sep 5, 2026
Merged

dannygoodacre merged 4 commits into
mainfrom
41-refactor-aftersaveasync-hooks-to-use-strongly-typed-success-payloads

Conversation

@dannygoodacre

@dannygoodacre dannygoodacre commented Sep 5, 2026 •

Copy link
Copy Markdown
Owner
  • Refactor AfterSaveAsync to use specific overrides for void and value result types.
  • Update generic type names: TResult to TResultWrapper; TResultType to TResult.

@dannygoodacre dannygoodacre self-assigned this Sep 5, 2026
@github-actions

github-actions Bot commented Sep 5, 2026 •

Copy link
Copy Markdown

Summary

Summary
Generated on: 09/05/2026 - 13:49:31
Coverage date: 09/05/2026 - 13:49:28 - 09/05/2026 - 13:49:30
Parser: MultiReport (4x Cobertura)
Assemblies: 5
Classes: 36
Files: 23
Line coverage: 94% (476 of 506)
Covered lines: 476
Uncovered lines: 30
Coverable lines: 506
Total lines: 1500
Branch coverage: 82.8% (126 of 152)
Covered branches: 126
Total branches: 152
Method coverage: Feature is only available for sponsors

Coverage

DannyGoodacre.Cqrs - 90.1%
Name Line Branch
DannyGoodacre.Cqrs 90.1% 80%
DannyGoodacre.Cqrs.CommandHandler`1 100%
DannyGoodacre.Cqrs.CommandHandler`2 100%
DannyGoodacre.Cqrs.CommandHandlerBase`2 100% 100%
DannyGoodacre.Cqrs.LoggerExtensions 100% 50%
DannyGoodacre.Cqrs.QueryHandler`2 96.1% 100%
DannyGoodacre.Cqrs.StateCommandHandler`1 50% 50%
DannyGoodacre.Cqrs.StateCommandHandler`2 50% 50%
DannyGoodacre.Cqrs.StateCommandHandlerBase`2 96.1% 100%
DannyGoodacre.Cqrs.TransactionCommandHandler`1 50% 100%
DannyGoodacre.Cqrs.TransactionCommandHandler`2 50% 100%
DannyGoodacre.Cqrs.TransactionCommandHandlerBase`2 97.7% 100%
DannyGoodacre.Cqrs.TypeExtensions 100% 92.8%
Microsoft.Extensions.DependencyInjection.ServiceCollectionExtensions 100% 100%
DannyGoodacre.Cqrs.EntityFrameworkCore - 100%
Name Line Branch
DannyGoodacre.Cqrs.EntityFrameworkCore 100% 81.2%
DannyGoodacre.Cqrs.EntityFrameworkCore.DbContextTransactionUnit`1 100% 91.6%
Microsoft.Extensions.DependencyInjection.ServiceCollectionExtensions 100% 50%
DannyGoodacre.Cqrs.Testing - 98.2%
Name Line Branch
DannyGoodacre.Cqrs.Testing 98.2% 100%
DannyGoodacre.Cqrs.Testing.CommandHandlerTestCore`2 100%
DannyGoodacre.Cqrs.Testing.LoggerMockExtensions 100%
DannyGoodacre.Cqrs.Testing.QueryHandlerTestBase`2 100%
DannyGoodacre.Cqrs.Testing.StateCommandHandlerTestCore`2 100%
DannyGoodacre.Cqrs.Testing.TransactionCommandHandlerTestCore`2 94.4% 100%
DannyGoodacre.Primitives - 98.3%
Name Line Branch
DannyGoodacre.Primitives 98.3% 95.4%
DannyGoodacre.Primitives.Conflict 100%
DannyGoodacre.Primitives.Conflict`1 100%
DannyGoodacre.Primitives.DomainError 100%
DannyGoodacre.Primitives.DomainError`1 100%
DannyGoodacre.Primitives.Error 100%
DannyGoodacre.Primitives.InternalError 100%
DannyGoodacre.Primitives.InternalError`1 100%
DannyGoodacre.Primitives.Invalid 100%
DannyGoodacre.Primitives.Invalid`1 100%
DannyGoodacre.Primitives.IResult 95% 92.8%
DannyGoodacre.Primitives.Result 100%
DannyGoodacre.Primitives.Result`1 100%
DannyGoodacre.Primitives.Success`1 100%
DannyGoodacre.Primitives.ValidationState 100% 100%
DannyGoodacre.Testing - 98.5%
Name Line Branch
DannyGoodacre.Testing 98.5% 80%
DannyGoodacre.Testing.LoggerExtensions 94.4% 50%
DannyGoodacre.Testing.TestBase 100% 82.1%

Full coverage report artifact

@dannygoodacre
dannygoodacre merged commit 506494a into main Sep 5, 2026
1 check passed
@dannygoodacre
dannygoodacre deleted the 41-refactor-aftersaveasync-hooks-to-use-strongly-typed-success-payloads branch September 5, 2026 13:52
dannygoodacre added a commit that referenced this pull request Sep 8, 2026
- Refactor AfterSaveAsync to use specific overrides for void and value
result types.
- Update generic type names: TResult to TResultWrapper; TResultType to
TResult.
dannygoodacre added a commit that referenced this pull request Sep 8, 2026
- Refactor AfterSaveAsync to use specific overrides for void and value
result types.
- Update generic type names: TResult to TResultWrapper; TResultType to
TResult.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor AfterSaveAsync hooks to use strongly-typed success payloads

1 participant