Conversation
There was a problem hiding this comment.
Pull request overview
This PR expands the public surface of aweXpect.Core to expose per-expectation timing/cancellation settings via ExpectationBuilder, and updates API baseline snapshots accordingly.
Changes:
- Expose
ExpectationBuilder.TimeoutandExpectationBuilder.CancellationTokenas public gettable properties. - Refactor internal handling to store timeout/cancellation on these properties (instead of private backing fields) and use them during evaluation/message creation.
- Update API baseline snapshots for
netstandard2.0,net8.0, andnet10.0.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| Source/aweXpect.Core/Core/ExpectationBuilder.cs | Adds public Timeout/CancellationToken properties and switches evaluation code to use them. |
| Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt | Updates expected public API surface for netstandard2.0. |
| Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt | Updates expected public API surface for net8.0. |
| Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net10.0.txt | Updates expected public API surface for net10.0. |
Test Results 23 files - 27 23 suites - 27 7m 58s ⏱️ +8s Results for commit b7084d2. ± Comparison against base commit 91119c6. This pull request removes 3112 and adds 3091 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
🚀 Benchmark ResultsDetails
|
eb62ddf to
b7084d2
Compare
|
…cellationToken` in the `ExpectationBuilder` (#901) by Valentin Breuß
…cellationToken` in the `ExpectationBuilder` (#901) by Valentin Breuß
|
This is addressed in release v2.31.0. |
Updated [aweXpect](https://github.com/aweXpect/aweXpect) from 2.26.0 to 2.31.0. <details> <summary>Release notes</summary> _Sourced from [aweXpect's releases](https://github.com/aweXpect/aweXpect/releases)._ ## 2.31.0 ## What's Changed * chore: Bump the xunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#883 * chore: Bump apexskier/github-release-commenter from 1.3.6 to 1.4.1 by @dependabot[bot] in Testably/aweXpect#884 * chore: Bump SharpCompress from 0.42.1 to 0.44.3 by @dependabot[bot] in Testably/aweXpect#886 * docs: support nested directories in extensions by @vbreuss in Testably/aweXpect#887 * chore: Bump the tunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#888 * chore: Bump SharpCompress from 0.44.3 to 0.44.5 by @dependabot[bot] in Testably/aweXpect#889 * chore: Bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in Testably/aweXpect#898 * chore: Bump actions/download-artifact from 7 to 8 by @dependabot[bot] in Testably/aweXpect#899 * chore: Bump the mstest group with 2 updates by @dependabot[bot] in Testably/aweXpect#890 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#895 * chore: Bump coverlet.collector from 6.0.4 to 8.0.0 by @dependabot[bot] in Testably/aweXpect#897 * chore: update docusaurus webpage by @vbreuss in Testably/aweXpect#900 * refactor: fix build warnings by @vbreuss in Testably/aweXpect#902 * feat: give access to `Timeout` and `CancellationToken` in the `ExpectationBuilder` by @vbreuss in Testably/aweXpect#901 * chore: Bump Microsoft.Testing.Extensions.CodeCoverage from 18.3.2 to 18.5.2 by @dependabot[bot] in Testably/aweXpect#906 * chore: Bump Microsoft.NET.Test.Sdk from 18.0.1 to 18.3.0 by @dependabot[bot] in Testably/aweXpect#905 * chore: Bump the nunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#903 * chore: bump aweXpect.Core to v2.28.0 by @vbreuss in Testably/aweXpect#909 * refactor: migrate to slnx format by @vbreuss in Testably/aweXpect#908 **Full Changelog**: Testably/aweXpect@v2.30.0...v2.31.0 ## 2.30.0 ## What's Changed * chore: Bump actions/checkout from 5 to 6 by @dependabot[bot] in Testably/aweXpect#850 * chore: Bump the mstest group with 2 updates by @dependabot[bot] in Testably/aweXpect#851 * chore: Bump the tunit group with 3 updates by @dependabot[bot] in Testably/aweXpect#853 * chore: Bump Microsoft.NET.Test.Sdk from 18.0.0 to 18.0.1 by @dependabot[bot] in Testably/aweXpect#854 * chore: Bump Microsoft.Testing.Extensions.TrxReport from 2.0.1 to 2.0.2 by @dependabot[bot] in Testably/aweXpect#855 * chore: update docusaurus dependencies by @vbreuss in Testably/aweXpect#856 * chore: bump nuke to v10.1.0 by @vbreuss in Testably/aweXpect#862 * chore: Bump BenchmarkDotNet from 0.15.6 to 0.15.8 by @dependabot[bot] in Testably/aweXpect#860 * chore: Bump PublicApiGenerator from 11.5.0 to 11.5.3 by @dependabot[bot] in Testably/aweXpect#861 * chore: Bump PublicApiGenerator from 11.5.3 to 11.5.4 by @dependabot[bot] in Testably/aweXpect#864 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#863 * chore: Bump the xunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#858 * chore: Bump actions/download-artifact from 6 to 7 by @dependabot[bot] in Testably/aweXpect#866 * chore: Bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in Testably/aweXpect#867 * chore: Bump the tunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#868 * chore: Bump SharpCompress from 0.41.0 to 0.42.1 by @dependabot[bot] in Testably/aweXpect#869 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#876 * chore: Bump Microsoft.Testing.Extensions.CodeCoverage and 2 others by @dependabot[bot] in Testably/aweXpect#875 * feat: add implicit conversion to `Times` by @vbreuss in Testably/aweXpect#878 * chore: Bump TUnit and TUnit.Assertions by @dependabot[bot] in Testably/aweXpect#879 * feat: support async `Because` reason by @vbreuss in Testably/aweXpect#880 * chore: bump aweXpect.Core to v2.27.0 by @vbreuss in Testably/aweXpect#881 **Full Changelog**: Testably/aweXpect@v2.29.0...v2.30.0 ## 2.29.0 ## What's Changed * chore: update aweXpect to v2.28.0 by @vbreuss in Testably/aweXpect#841 * refactor: move needs from pack to push by @vbreuss in Testably/aweXpect#840 * chore: Bump the tunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#842 * chore: Bump BenchmarkDotNet from 0.15.5 to 0.15.6 by @dependabot[bot] in Testably/aweXpect#843 * chore: Bump PublicApiGenerator from 11.4.6 to 11.5.0 by @dependabot[bot] in Testably/aweXpect#844 * chore: Bump SharpCompress from 0.39.0 to 0.41.0 by @dependabot[bot] in Testably/aweXpect#845 * feat: add support for .NET 10 by @vbreuss in Testably/aweXpect#794 * fix: disable failing mutation tests by @vbreuss in Testably/aweXpect#847 * fix: add attributes only when they are available by @vbreuss in Testably/aweXpect#846 * chore: bump aweXpect.Core to v2.26.0 by @vbreuss in Testably/aweXpect#848 * fix: build error with MTP mode of dotnet test by @vbreuss in Testably/aweXpect#849 **Full Changelog**: Testably/aweXpect@v2.28.0...v2.29.0 ## 2.28.0 ## What's Changed * chore: update aweXpect to v2.27.1 by @vbreuss in Testably/aweXpect#818 * docs: document Mockolate by @vbreuss in Testably/aweXpect#828 * chore: Bump actions/setup-node from 5 to 6 by @dependabot[bot] in Testably/aweXpect#819 * chore: Bump actions/download-artifact from 5 to 6 by @dependabot[bot] in Testably/aweXpect#822 * chore: Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in Testably/aweXpect#823 * chore: Bump BenchmarkDotNet from 0.14.0 to 0.15.4 by @dependabot[bot] in Testably/aweXpect#824 * chore: Bump FluentAssertions from 8.2.0 to 8.8.0 by @dependabot[bot] in Testably/aweXpect#825 * docs: fix docusaurus warning by @vbreuss in Testably/aweXpect#829 * chore: Bump Microsoft.NET.Test.Sdk from 17.14.1 to 18.0.0 by @dependabot[bot] in Testably/aweXpect#826 * chore: Bump Microsoft.Testing.Extensions.CodeCoverage from 17.14.2 to 18.1.0 by @dependabot[bot] in Testably/aweXpect#827 * chore: update TUnit to v0.88.0 by @vbreuss in Testably/aweXpect#830 * feat: improve test output for dictionary `ContainsKey` by @vbreuss in Testably/aweXpect#835 * chore: Bump the xunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#833 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#831 * chore: Bump BenchmarkDotNet from 0.15.4 to 0.15.5 by @dependabot[bot] in Testably/aweXpect#834 * fix: infinite loop in result contexts by @vbreuss in Testably/aweXpect#836 * fix: use list in `ResultContexts` by @vbreuss in Testably/aweXpect#837 * feat: include actual and expected context in string contains by @vbreuss in Testably/aweXpect#838 * chore: update aweXpect.Core to v2.25.2 by @vbreuss in Testably/aweXpect#839 **Full Changelog**: Testably/aweXpect@v2.27.1...v2.28.0 ## 2.27.1 ## What's Changed * fix: formatting of nested types within generic types by @vbreuss in Testably/aweXpect#815 * refactor: reduce allocations for context by @vbreuss in Testably/aweXpect#816 * chore: bump aweXpect.Core to v2.25.1 by @vbreuss in Testably/aweXpect#817 **Full Changelog**: Testably/aweXpect@v2.27.0...v2.27.1 ## 2.27.0 ## What's Changed * chore: Bump the xunit group with 3 updates by @dependabot[bot] in Testably/aweXpect#800 * chore: Bump the mstest group with 2 updates by @dependabot[bot] in Testably/aweXpect#801 * feat: allow customization of the `MaximumStringLength` by @vbreuss in Testably/aweXpect#802 * chore: update docusaurus to v3.9.1 by @vbreuss in Testably/aweXpect#803 * fix: formatting of nullable types by @vbreuss in Testably/aweXpect#808 * chore: Bump the mstest group with 2 updates by @dependabot[bot] in Testably/aweXpect#805 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#806 * chore: update TUnit to v0.70.0 by @vbreuss in Testably/aweXpect#809 * feat: move framework adapters to source generation by @vbreuss in Testably/aweXpect#810 * coverage: ensure that `NaN` is considered equal to `NaN` by @vbreuss in Testably/aweXpect#811 * chore: bump the aweXpect group by @vbreuss in Testably/aweXpect#812 * chore: update aweXpect.Core to v2.25.0 by @vbreuss in Testably/aweXpect#813 * feat: support MSTest v4 by @vbreuss in Testably/aweXpect#814 **Full Changelog**: Testably/aweXpect@v2.26.0...v2.27.0 Commits viewable in [compare view](Testably/aweXpect@v2.26.0...v2.31.0). </details> Updated [aweXpect.Core](https://github.com/aweXpect/aweXpect) from 2.24.0 to 2.28.0. <details> <summary>Release notes</summary> _Sourced from [aweXpect.Core's releases](https://github.com/aweXpect/aweXpect/releases)._ ## 2.28.0 ## What's Changed * chore: update aweXpect to v2.27.1 by @vbreuss in Testably/aweXpect#818 * docs: document Mockolate by @vbreuss in Testably/aweXpect#828 * chore: Bump actions/setup-node from 5 to 6 by @dependabot[bot] in Testably/aweXpect#819 * chore: Bump actions/download-artifact from 5 to 6 by @dependabot[bot] in Testably/aweXpect#822 * chore: Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in Testably/aweXpect#823 * chore: Bump BenchmarkDotNet from 0.14.0 to 0.15.4 by @dependabot[bot] in Testably/aweXpect#824 * chore: Bump FluentAssertions from 8.2.0 to 8.8.0 by @dependabot[bot] in Testably/aweXpect#825 * docs: fix docusaurus warning by @vbreuss in Testably/aweXpect#829 * chore: Bump Microsoft.NET.Test.Sdk from 17.14.1 to 18.0.0 by @dependabot[bot] in Testably/aweXpect#826 * chore: Bump Microsoft.Testing.Extensions.CodeCoverage from 17.14.2 to 18.1.0 by @dependabot[bot] in Testably/aweXpect#827 * chore: update TUnit to v0.88.0 by @vbreuss in Testably/aweXpect#830 * feat: improve test output for dictionary `ContainsKey` by @vbreuss in Testably/aweXpect#835 * chore: Bump the xunit group with 2 updates by @dependabot[bot] in Testably/aweXpect#833 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#831 * chore: Bump BenchmarkDotNet from 0.15.4 to 0.15.5 by @dependabot[bot] in Testably/aweXpect#834 * fix: infinite loop in result contexts by @vbreuss in Testably/aweXpect#836 * fix: use list in `ResultContexts` by @vbreuss in Testably/aweXpect#837 * feat: include actual and expected context in string contains by @vbreuss in Testably/aweXpect#838 * chore: update aweXpect.Core to v2.25.2 by @vbreuss in Testably/aweXpect#839 **Full Changelog**: Testably/aweXpect@v2.27.1...v2.28.0 ## 2.27.1 ## What's Changed * fix: formatting of nested types within generic types by @vbreuss in Testably/aweXpect#815 * refactor: reduce allocations for context by @vbreuss in Testably/aweXpect#816 * chore: bump aweXpect.Core to v2.25.1 by @vbreuss in Testably/aweXpect#817 **Full Changelog**: Testably/aweXpect@v2.27.0...v2.27.1 ## 2.27.0 ## What's Changed * chore: Bump the xunit group with 3 updates by @dependabot[bot] in Testably/aweXpect#800 * chore: Bump the mstest group with 2 updates by @dependabot[bot] in Testably/aweXpect#801 * feat: allow customization of the `MaximumStringLength` by @vbreuss in Testably/aweXpect#802 * chore: update docusaurus to v3.9.1 by @vbreuss in Testably/aweXpect#803 * fix: formatting of nullable types by @vbreuss in Testably/aweXpect#808 * chore: Bump the mstest group with 2 updates by @dependabot[bot] in Testably/aweXpect#805 * chore: Bump the nunit group with 1 update by @dependabot[bot] in Testably/aweXpect#806 * chore: update TUnit to v0.70.0 by @vbreuss in Testably/aweXpect#809 * feat: move framework adapters to source generation by @vbreuss in Testably/aweXpect#810 * coverage: ensure that `NaN` is considered equal to `NaN` by @vbreuss in Testably/aweXpect#811 * chore: bump the aweXpect group by @vbreuss in Testably/aweXpect#812 * chore: update aweXpect.Core to v2.25.0 by @vbreuss in Testably/aweXpect#813 * feat: support MSTest v4 by @vbreuss in Testably/aweXpect#814 **Full Changelog**: Testably/aweXpect@v2.26.0...v2.27.0 ## 2.26.0 ## What's Changed * feat: add string property result by @vbreuss in Testably/aweXpect#795 * feat: support direct check for boolean is `true` by @vbreuss in Testably/aweXpect#797 * chore: update aweXpect.Core to v2.24.0 by @vbreuss in Testably/aweXpect#798 **Full Changelog**: Testably/aweXpect@v2.25.0...v2.26.0 ## 2.25.0 ## What's Changed * refactor!: make `IStringMatchType` asynchronous by @vbreuss in Testably/aweXpect#787 * refactor: make `EquivalencyExpectationBuilder` public by @vbreuss in Testably/aweXpect#788 * chore: bump aweXpect.Core to v2.22.0 by @vbreuss in Testably/aweXpect#789 * fix: handle `null` in `It.Is` by @vbreuss in Testably/aweXpect#790 * fix: correct error message for prefix/suffix of empty strings by @vbreuss in Testably/aweXpect#791 * chore: bump the aweXpect group by @vbreuss in Testably/aweXpect#792 * feat: add `WithoutMessage` for delegate assertions by @vbreuss in Testably/aweXpect#793 **Full Changelog**: Testably/aweXpect@v2.24.0...v2.25.0 Commits viewable in [compare view](Testably/aweXpect@v2.24.0...v2.28.0). </details>



This PR expands the public surface of
aweXpect.Coreto expose per-expectation timing/cancellation settings viaExpectationBuilder, and updates API baseline snapshots accordingly.Key Changes:
ExpectationBuilder.TimeoutandExpectationBuilder.CancellationTokenas public gettable properties.netstandard2.0,net8.0, andnet10.0.