FluentAssertions 1.6.0
A very extensive set of extension methods for .NET 3.5, 4.0 and Silverlight 4.0 that allow you to more naturally specify the expected outcome of a TDD or BDD-style unit test.
No packages depend on FluentAssertions.
• And() extension method to TimeSpanConversionExtensions to support 4.Hours().And(30.Minutes()).
• More TimeSpan extensions to fluently create a TimeSpan like 23.Hours(59.Minutes()).And(20.Seconds()).
• Support for Mspec as contributed by Urs Enzler.
• Support for the ComparisonMode to assert inner exception messages as well. Also added ComparisonMode Equivalent and EquivalentSubstring to assert that the message of an (inner) exception matches a certain case-insensitive phrase.
• Guid assertions like Be(), NotBe(), BeEmpty() and NotBeEmpty().
• Support for recursively comparing the properties of nested objects using ShouldHave().AllProperties().IncludingNestedObjects().EqualTo().
• Type and MethodInfo assertions for asserting class members are virtual or decorated with specific attributes.
• Before and After extensions methods for TimeSpans .
• Should().Be() and NotBe() extensions to the TypeAssertions.
• PDB files to the release build as another contribution by Urs Enzler.
• The name of the property to the ShouldFirePropertyChanged extension method failure message, also contributed by Urs Enzler.
• Added comments to some of the assertion classes.
• Fixed a stack overflow exception due to a recursive call between the various overloads of floating point extension method BeApproximately()
• While comparing two collections for equality, FA didn't check any superfluous items in the expected collection.
• Boolean assertions did not properly check against null values.
• Fixed a stack overflow exception while creating a displayable representation of an object that contains circular references.
• Fixed some potential memory leaks fix in MonitorEvents() using a patch provided by Remo Gloor.
• Sometimes the wrong name of a the property or type was reported in a failure message.
• ShouldHave().AllProperties().EqualTo() sometimes treated two objects that are functional equivalent according to their Equals() override as different, simply because they were not of the same type.
• Fixed the detection of collection items that appear in the wrong order in Should().ContainInOrder().
This package has no dependencies.
| Version | Downloads | Last updated |
|---|---|---|
| 8.8.0 | 4 | 10/26/2025 |
| 8.7.1 | 5 | 10/10/2025 |
| 8.7.0 | 3 | 10/05/2025 |
| 8.6.0 | 4 | 09/04/2025 |
| 8.5.0 | 6 | 07/15/2025 |
| 8.4.0 | 7 | 07/04/2025 |
| 8.3.0 | 9 | 06/08/2025 |
| 8.2.0 | 15 | 04/02/2025 |
| 8.1.1 | 15 | 04/06/2025 |
| 8.1.0 | 12 | 04/02/2025 |
| 8.0.1 | 16 | 02/01/2025 |
| 8.0.0 | 17 | 01/25/2025 |
| 8.0.0-rc.2 | 18 | 01/07/2025 |
| 8.0.0-rc.1 | 17 | 01/07/2025 |
| 8.0.0-alpha.68 | 15 | 01/07/2025 |
| 8.0.0-alpha.1 | 15 | 12/12/2024 |
| 7.2.0 | 17 | 04/02/2025 |
| 7.1.0 | 13 | 01/25/2025 |
| 7.0.0 | 19 | 12/19/2024 |
| 7.0.0-alpha.6 | 19 | 12/12/2024 |
| 7.0.0-alpha.5 | 17 | 11/14/2024 |
| 7.0.0-alpha.4 | 21 | 11/14/2024 |
| 7.0.0-alpha.3 | 23 | 06/01/2024 |
| 7.0.0-alpha.2 | 19 | 06/01/2024 |
| 7.0.0-alpha.1 | 23 | 06/01/2024 |
| 6.12.2 | 22 | 11/14/2024 |
| 6.12.1 | 23 | 11/14/2024 |
| 6.12.0 | 18 | 11/14/2024 |
| 6.11.0 | 21 | 06/01/2024 |
| 6.10.0 | 18 | 11/14/2024 |
| 6.9.0 | 20 | 06/01/2024 |
| 6.8.0 | 20 | 06/01/2024 |
| 6.7.0 | 16 | 06/01/2024 |
| 6.6.0 | 21 | 06/01/2024 |
| 6.5.1 | 17 | 06/01/2024 |
| 6.5.0 | 19 | 06/01/2024 |
| 6.4.0 | 13 | 12/19/2024 |
| 6.3.0 | 25 | 06/01/2024 |
| 6.2.0 | 20 | 06/01/2024 |
| 6.1.0 | 17 | 06/01/2024 |
| 6.0.0 | 18 | 06/01/2024 |
| 6.0.0-beta0003 | 18 | 06/01/2024 |
| 6.0.0-beta0002 | 19 | 06/01/2024 |
| 6.0.0-beta0001 | 21 | 06/01/2024 |
| 6.0.0-alpha0002 | 22 | 06/01/2024 |
| 6.0.0-alpha0001 | 23 | 06/01/2024 |
| 5.10.3 | 27 | 01/13/2023 |
| 5.10.2 | 25 | 06/01/2024 |
| 5.10.0 | 23 | 06/01/2024 |
| 5.9.0 | 23 | 06/01/2024 |
| 5.8.0 | 23 | 06/01/2024 |
| 5.7.0 | 26 | 06/01/2024 |
| 5.6.0 | 16 | 06/01/2024 |
| 5.5.3 | 21 | 06/01/2024 |
| 5.5.1 | 26 | 06/01/2024 |
| 5.4.2 | 19 | 06/01/2024 |
| 5.4.1 | 22 | 06/01/2024 |
| 5.4.0 | 27 | 06/01/2024 |
| 5.3.2 | 18 | 06/01/2024 |
| 5.3.0 | 19 | 06/01/2024 |
| 5.2.0 | 20 | 06/01/2024 |
| 5.1.2 | 20 | 06/01/2024 |
| 5.1.1 | 22 | 06/01/2024 |
| 5.0.0 | 16 | 06/01/2024 |
| 4.19.4 | 21 | 06/01/2024 |
| 4.19.3 | 21 | 06/01/2024 |
| 4.19.2 | 26 | 06/01/2024 |
| 4.19.0 | 18 | 06/01/2024 |
| 4.18.0 | 23 | 06/01/2024 |
| 4.17.0 | 22 | 06/01/2024 |
| 4.16.0 | 25 | 06/01/2024 |
| 4.15.0 | 21 | 06/01/2024 |
| 4.14.0 | 19 | 06/01/2024 |
| 4.13.1 | 21 | 06/01/2024 |
| 4.13.0 | 19 | 06/01/2024 |
| 4.12.0 | 17 | 11/14/2024 |
| 4.11.0 | 15 | 12/11/2024 |
| 4.10.0 | 20 | 06/01/2024 |
| 4.9.1 | 21 | 06/01/2024 |
| 4.9.0 | 22 | 06/01/2024 |
| 4.8.0 | 20 | 06/01/2024 |
| 4.7.0 | 20 | 06/01/2024 |
| 4.6.3 | 19 | 06/01/2024 |
| 4.6.2 | 21 | 06/01/2024 |
| 4.6.1 | 21 | 06/01/2024 |
| 4.5.0 | 21 | 06/01/2024 |
| 4.4.0 | 20 | 06/01/2024 |
| 4.3.2 | 19 | 06/01/2024 |
| 4.3.1 | 24 | 06/01/2024 |
| 4.3.0 | 18 | 06/01/2024 |
| 4.2.2 | 22 | 06/01/2024 |
| 4.2.1 | 21 | 06/01/2024 |
| 4.2.0 | 16 | 11/14/2024 |
| 4.1.1 | 21 | 06/01/2024 |
| 4.1.0 | 16 | 06/01/2024 |
| 4.0.1 | 19 | 06/01/2024 |
| 4.0.0 | 19 | 11/14/2024 |
| 4.0.0-beta0001 | 21 | 06/01/2024 |
| 3.5.0 | 26 | 06/01/2024 |
| 3.4.1 | 18 | 06/01/2024 |
| 3.4.0 | 16 | 11/14/2024 |
| 3.3.0 | 17 | 06/01/2024 |
| 3.2.2 | 18 | 06/01/2024 |
| 3.2.1 | 18 | 06/01/2024 |
| 3.1.229 | 20 | 06/01/2024 |
| 3.0.107 | 17 | 06/01/2024 |
| 2.2.0 | 18 | 06/01/2024 |
| 2.1.0 | 16 | 06/01/2024 |
| 2.0.1 | 20 | 06/01/2024 |
| 2.0.0.1 | 17 | 11/14/2024 |
| 1.7.1.1 | 25 | 06/01/2024 |
| 1.7.0 | 18 | 06/01/2024 |
| 1.6.0 | 21 | 06/01/2024 |
| 1.5.0 | 20 | 06/01/2024 |
| 1.4.0 | 19 | 06/01/2024 |
| 1.3.0.1 | 19 | 06/01/2024 |