FsCheck.NUnit
3.0.0-beta1
See the version list below for details.
dotnet add package FsCheck.NUnit --version 3.0.0-beta1
NuGet\Install-Package FsCheck.NUnit -Version 3.0.0-beta1
<PackageReference Include="FsCheck.NUnit" Version="3.0.0-beta1" />
<PackageVersion Include="FsCheck.NUnit" Version="3.0.0-beta1" />
<PackageReference Include="FsCheck.NUnit" />
paket add FsCheck.NUnit --version 3.0.0-beta1
#r "nuget: FsCheck.NUnit, 3.0.0-beta1"
#:package FsCheck.NUnit@3.0.0-beta1
#addin nuget:?package=FsCheck.NUnit&version=3.0.0-beta1&prerelease
#tool nuget:?package=FsCheck.NUnit&version=3.0.0-beta1&prerelease
FsCheck.NUnit integrates FsCheck with NUnit by adding a PropertyAttribute that runs FsCheck tests, similar to NUnit TestAttribute.
All the options normally available in vanilla FsCheck via configuration can be controlled via the PropertyAttribute.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
NuGet packages (3)
Showing the top 3 NuGet packages that depend on FsCheck.NUnit:
| Package | Downloads |
|---|---|
|
Math.Units
Package Description |
|
|
Active.Net.AddOnlyDb
Simple syncable key-value database, based on SQLite |
|
|
Lykke.RabbitMqBroker.TestDataGenerators
Package Description |
GitHub repositories (2)
Showing the top 2 popular GitHub repositories that depend on FsCheck.NUnit:
| Repository | Stars |
|---|---|
|
elucidsoft/dotnet-stellar-sdk
Stellar API SDK for .NET 6.x
|
|
|
Enzx/NxGraph
NxGraph is a zero-allocation runtime, high-performance finite state machine (FSM) framework for .NET 8+, designed for scenarios where execution speed, memory efficiency, and runtime safety are critical.
|
| Version | Downloads | Last Updated |
|---|---|---|
| 3.3.2 | 48,395 | 11/9/2025 |
| 3.3.1 | 33,224 | 8/24/2025 |
| 3.3.0 | 28,469 | 6/3/2025 |
| 3.2.0 | 26,695 | 4/10/2025 |
| 3.1.0 | 25,694 | 1/30/2025 |
| 3.0.1 | 11,443 | 1/22/2025 |
| 3.0.0 | 8,507 | 1/7/2025 |
| 3.0.0-rc3 | 40,628 | 3/3/2024 |
| 3.0.0-rc2 | 333 | 2/25/2024 |
| 3.0.0-rc1 | 9,415 | 7/23/2023 |
| 3.0.0-beta2 | 12,668 | 1/8/2022 |
| 3.0.0-beta1 | 1,471 | 9/5/2021 |
| 2.16.6 | 235,455 | 7/1/2023 |
| 2.16.5 | 149,897 | 6/1/2022 |
| 2.16.4 | 189,211 | 1/8/2022 |
| 2.16.3 | 32,417 | 9/4/2021 |
| 2.16.2 | 1,825 | 8/30/2021 |
| 2.16.0 | 7,419 | 8/13/2021 |
| 2.15.3 | 63,909 | 5/8/2021 |
Backwards incompatible*: Refactor and split of the `Gen` and `Arbitrary` APIs into `FsCheck.FSharp` and `FsCheck.Fluent`. This is a first step in splitting the entire API into a functional (for F# consumers) and fluent (for C# and VB.NET consumers) interface. This should be clearer for both kinds of consumers.
By and large, if you are an F# user, now `open FsCheck.FSharp` in addition to `open FsCheck`. If you are a C# or VB.NET user, add `using FsCheck.Fluent`.
Backwards incompatible*: redesigned API for per-type Arbitrary instance discovery and lookup. There is no longer a single global, mutable map of type to Arbitrary instances, instead there are any number of immutable `IArbMap`s that can be configured at your leisure, and set via `Config.WithArbitrary` on the test.
Detailed changes to `FsCheck.FSharp.Gen`: Added `RequireQualifiedAccess`. Added `apply` and `bind`. Renamed `collect` and `sequence` to `collect/sequenceToList/Array/Seq` for clarity. Removed `unzip` and `unzip3` - their implementation is problematic, and it's hard to see a use case for them. Removed `subListOfToIlist`, `subListOfArr` - these returned `IList<'T>` types. Untupled `rows,cols` arguments in `array2DOfDim`.
Detailed changes to `FsCheck.Fluent.Gen`: Split into non-extension methods on `Gen` and extension methods on `Gen<T>` type in `GenExtensions`. Removed `Gen.Apply` - not useful without partial application. `Two`, `Three`, `Four` and `Zip` now output ValueTuples, which is idiomatic in modern C#, and are only visible as extension methods on `Gen<T>`. Removed the overloads of `Zip` with arity 3. Changed the return type of methods that returned `IList<T>` previously to `List<T>`. Split the `Sample` method with optional arguments in three overloads, this is better for backwards compatibilty going forward.
Detailed changes to `FsCheck.FSharp.Arb`: Removed `fromGenShrinkFunc`. Removed `register`, `registerByType`, `from`, `generate` and `shrink` - these are replaced by functions on `ArbMap`, resp. `mergeWith`, `mergeWithType`, `arbitrary` and `generate`. Made `Arb.Default` internal. Default types should now be looked up using `ArbMap`, e.g. `ArbMap.defaults |> ArbMap.arbitrary<list<int>>`.
Detailed changes to `FsCheck.Fluent.Arb`: Removed extension method `ToArbitrary` that took an F# function as argument for the shrinker. Renamad `Arb.From` methods to `Arbitrary.From` - C# does not tolerate ambiguity between using two types of the same name in the same namespace. Removed `Register`, `RegisterByType`, `From`, `Generate` and `Shrink` - these are replaced by methods on `ArbMap`, resp. `Merge<'T>`, `Merge`, `ArbFor` and `GeneratorFor`. Made `Arb.Default` internal. Default Arbitrary types should now be looked up using `ArbMap`, e.g. `ArbMap.Default.ArbFor<int[]>()`.
First pass at improving XML docs for Gen API.
Fixed bug in `try..with` computation expression builder.
Added support for `let!...and!...` syntax in computation expression builder.