Conversation
7e6e098 to
35478f6
Compare
There was a problem hiding this comment.
Code Review: Automated Mock Benchmark Update
This is a purely automated documentation update — no code changes, only benchmark data and markdown refreshes.
Summary of Changes
- Date stamps updated:
2026-04-05→2026-04-06 - Benchmark numbers refreshed across all 6 categories (Callback, CombinedWorkflow, Invocation, MockCreation, Setup, Verification)
- JSON data files (
latest.json,summary.json) updated accordingly
Notable Benchmark Trends (vs previous run)
Improvements for TUnit.Mocks:
- Invocation: 368.7 ns → 255.7 ns (~30% faster) with lower allocation (176 B → 120 B) — a meaningful gain
- Invocation (String): 227.7 ns → 152.2 ns (~33% faster), allocation dropped 112 B → 88 B
- Invocation (100 calls): 39,741.9 ns → 26,043.7 ns (~34% faster), 18048 B → 11936 B
- MockCreation: Minor improvement, 37.32 ns → 35.02 ns
Slight regressions for TUnit.Mocks:
- Callback: 651.9 ns → 719.4 ns (~10% slower)
- CombinedWorkflow: 1.864 μs → 2.064 μs (~11% slower)
The Invocation improvements are significant and consistent across all invocation variants, suggesting something meaningful changed (either in the framework or in CI machine conditions). The Callback and CombinedWorkflow regressions are relatively small and within normal run-to-run variance given CI scheduling variability.
TUnit.Mocks continues to lead in MockCreation and Invocation benchmarks by a wide margin against Moq, NSubstitute, and FakeItEasy.
No Issues Found
The automation is well-structured: data files and generated markdown are updated together, charts and y-axis scales are recalculated correctly, and timestamps are consistent across all files. This is clean, low-risk documentation maintenance.
Code Review: Automated Mock Benchmark UpdateThis is a purely automated documentation update — no code changes, only benchmark data and markdown refreshes. Summary of Changes
Notable Benchmark Trends (vs previous run)Improvements for TUnit.Mocks:
Slight regressions for TUnit.Mocks:
The Invocation improvements are significant and consistent across all invocation variants. The Callback and CombinedWorkflow regressions are small and likely within normal CI run-to-run variance. TUnit.Mocks continues to lead in MockCreation and Invocation benchmarks by a wide margin against Moq, NSubstitute, and FakeItEasy. No Issues FoundThe automation is well-structured: data files and generated markdown are updated together, charts and y-axis scales are recalculated correctly, and timestamps are consistent across all files. This is clean, low-risk documentation maintenance. |
Up to standards ✅🟢 Issues
|
Updated [TUnit](https://github.com/thomhurst/TUnit) from 1.28.7 to 1.29.0. <details> <summary>Release notes</summary> _Sourced from [TUnit's releases](https://github.com/thomhurst/TUnit/releases)._ ## 1.29.0 <!-- Release notes generated using configuration in .github/release.yml at v1.29.0 --> ## What's Changed ### Other Changes * 🤖 Update Mock Benchmark Results by @thomhurst in thomhurst/TUnit#5420 * fix(mocks): resolve build errors when mocking Azure SDK clients by @thomhurst in thomhurst/TUnit#5440 * fix: deduplicate virtual hook overrides across class hierarchy (#5428) by @thomhurst in thomhurst/TUnit#5441 * fix(mocks): unique __argArray locals per event in RaiseEvent dispatch (#5423) by @thomhurst in thomhurst/TUnit#5442 * refactor(mocks): extract MockTypeModel.Visibility helper by @thomhurst in thomhurst/TUnit#5443 * fix(mocks): preserve nullable annotations on generated event implementations by @thomhurst in thomhurst/TUnit#5444 * fix(mocks): preserve nullability on event handler types (#5425) by @thomhurst in thomhurst/TUnit#5445 ### Dependencies * chore(deps): update tunit to 1.28.7 by @thomhurst in thomhurst/TUnit#5416 * chore(deps): update dependency polyfill to v10 by @thomhurst in thomhurst/TUnit#5417 * chore(deps): update dependency polyfill to v10 by @thomhurst in thomhurst/TUnit#5418 * chore(deps): update dependency mockolate to 2.4.0 by @thomhurst in thomhurst/TUnit#5431 * chore(deps): update mstest to 4.2.1 by @thomhurst in thomhurst/TUnit#5433 * chore(deps): update dependency microsoft.net.test.sdk to 18.4.0 by @thomhurst in thomhurst/TUnit#5435 * chore(deps): update microsoft.testing to 2.2.1 by @thomhurst in thomhurst/TUnit#5432 * chore(deps): update dependency microsoft.testing.extensions.codecoverage to 18.6.2 by @thomhurst in thomhurst/TUnit#5437 * chore(deps): update dependency @docusaurus/theme-mermaid to ^3.10.0 by @thomhurst in thomhurst/TUnit#5438 * chore(deps): update docusaurus to v3.10.0 by @thomhurst in thomhurst/TUnit#5439 **Full Changelog**: thomhurst/TUnit@v1.28.7...v1.29.0 Commits viewable in [compare view](thomhurst/TUnit@v1.28.7...v1.29.0). </details> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Automated Mock Benchmark Update
This PR updates the mock benchmark documentation with the latest results from the Mock Benchmarks workflow.
Benchmarks Produced
Individual benchmark artifacts are available for download:
mock-benchmark-MockCreationmock-benchmark-Setupmock-benchmark-Invocationmock-benchmark-Verificationmock-benchmark-Callbackmock-benchmark-CombinedWorkflowmock-benchmark-summary(aggregated overview)Libraries Compared
Libraries are discovered dynamically from the benchmark output. See the generated
summary.jsonfor the full list.Changes
docs/static/benchmarks/mocks/latest.jsondocs/docs/benchmarks/mocks/docs/static/benchmarks/mocks/summary.jsonWorkflow Run
🤖 This PR was automatically created and will be merged automatically once CI checks pass.