Xceed Fluent Assertions V8.7
Released: Sep 26, 2025
Mises à jour de V8.7
Fonctionnalités
- Added support for
System.Text.Json.JsonNode and JsonArray through new assertions as well as the BeEquivalentTo API.
- Added
WithoutMessage to allow asserting an exception message does not contain a wildcard pattern.
- Added
Value.ThatMatches and Value.ThatSatifies to build inline assertions when using BeEquivalentTo.
- Added
WithStrictTyping and WithStrictTypingFor to BeEquivalentTo to ensure types also match.
- Added ExcludingMembersNamed to BeEquivalentTo to exclude fields and properties anywhere in the graph.
- Added
Should().Throw(), ThrowAsync() and ThrowWithinAsync() flavors that don’t require a specific exception type.
- Clarified the date/time type when comparing non-compatible dates and times in
BeEquivalentTo.
- Improved the rendering of exception messages when using
WithMessage for better readability.
- Improved support for rendering multi-dimensional arrays in failure messages.
- Improved subject identification when chaining multiple assertions using Which.
- Provided a toggle to suppress the soft warning that commercial use requires a paid license.
Correctifs
- Ensured
WithTracing is safe when used with BeEquivalentTo globally.
- Fixed a regression from 8.1.0 where a
NullReferenceException was thrown during subject identification.
- Fixed a formatting exception when {} is used as a dictionary key.
- Removed the PowerShell script that opens the website because it misbehaves.
- All
Should() methods on reference types are now annotated with the [NotNull] attribute for a better Fluent Assertions experience when nullable reference types are enabled.
- Fixed a regression in which
CompleteWithinAsync treated a canceled task as an exception.