Fsharp Hedgehog Versions Save

Release with confidence, state-of-the-art property testing for .NET.

v0.13.0

10 months ago
  • Fix bug in Property.recheck where the result is always Failed. (#415, @TysonMN)
  • Runtime targets are now .NET Standard 2.0, .NET 4.8. and .NET 6.0. (#416, @LyndonGingerich)

v0.12.1

10 months ago
  • Add Tree.apply. Change Gen.apply from monadic to applicative. Revert runtime optimization of Gen.integral. (#398, @TysonMN)
  • Change ListGen.traverse from monadic to applicative. (#399, @TysonMN)
  • Fix bug in the BindReturn method of the property CE where the generated value is not added to the Journal. (#401, @TysonMN)
  • Add BindReturn to the gen CE. This essentially changes the last call to let! to use Gen.map instead of Gen.bind. Add MergeSources to the gen and property CEs. This change enables the and! syntax. (#400, @TysonMN)

v0.12.0

10 months ago
  • Rename Property.failOnFalse to Property.falseToFailure (#384, @TysonMN)
  • Add BindReturn to the property CE (#364, @TysonMN)
    • A breaking change. Previously, returning a bool from a property CE (after using let!) caused the CE to have return type Property<unit>. Now this results in a return type of Property<bool>. The previous behavior can now be expressed by piping the Property<bool> instance into Property.falseToFailure.
  • Change recheck API to accept recheck data encoded as string (#385, @TysonMN)
  • Add RecheckInfo to simplify recheck reporting (#386, @TysonMN)
  • Optimize rechecking by only executing the end of the property CE with the shrunken input (#336, @TysonMN)

v0.11.1

10 months ago
  • Add Property.failOnFalse (#380, @TysonMN)
  • Fix bug [#381][381] that prevents rendering of reports containing None (#382, @TysonMN)

v0.11.0

2 years ago
  • Improved integral shrink trees to match behavior of binary search (#239, @TysonMN)
  • Add render functions (#274, @adam-becker)
  • fix link to tutorial in nuget package (#305, @ThisFunctionalTom)
  • made Seq module internal and moved to own file (#307, @TysonMN)
  • Sort .editorconfig properties (#308, @adam-becker)
  • Remove PropertyConfig.coalesce (#309, @adam-becker)
  • Move property config to its own file. (#311, @adam-becker)
  • Add property args structure. (#312, @adam-becker)
  • Rename the parameters of Range.exponentialFrom (and friends) (#315, @dharmaturtle)
  • Implement Property.select via bind to avoid bug (#318, @TysonMN)
    • simplify fix for #317 (#356, @TysonMN)
  • Remove duplicates in frequency shrink tree (#321, @TysonMN)
  • Special processing for printing ResizeArray<_> in Property.forAll #323 (#324, @altxt)
  • Fix for counterexample crashing bug #327 (#328, @TysonMN)
  • Refactors to simplify code mostly for takeSmallest (#334, @TysonMN)
  • Remove extra sized call (#337, @adam-becker)
  • Implement Gen.mapN variants with Gen.apply (#338, @adam-becker)
  • allow tests to access internal scope (#344, @TysonMN)
  • change access scope for two top-level modules from private to internal (#345, @TysonMN)
  • improve function name takeSmallest to shrinkInput in Property (#347, @TysonMN)
  • Add error handling to Property.map (#348, @TysonMN)
  • Add contributing guidelines. (#349, @adam-becker)
  • Update benchmark project (#350, @adam-becker)
  • Deprecate gen functions (#351, @adam-becker)
  • Remove 'Random.Builder' (#352, @adam-becker)
  • make Gen.{sample, sampleTree} and Random.replicate lazy (#354, @TysonMN)
  • Better C# example in README.md. (#355, @adam-becker)
  • remove Property.ofThrowing (#357, @TysonMN)
  • Fixed import namespace in cshrp sample (#358, @lupin-de-mid)
  • Fix order of arguments to Expect.equal (#361, @TysonMN)
  • Fix a few things in our Seed implementation (#362, @adam-becker)
  • Utilize Property.set internally (#363, @TysonMN)

v0.10.0

3 years ago
  • Add PropertyConfig (#288, @dharmaturtle)
  • Add OptionTree.traverse (#282, @TysonMN)
  • Use fsdocs (#277, @adam-becker)
  • Rearrange parameters for better chaining (#266, @adam-becker)
    • Rearrange Tree.bind parameters (#300, @adam-becker)
  • Add ListGen.traverse (#260, @TysonMN)
  • Improve and extend DateTime/DateTimeOffset generation (#252, @cmeeren)
  • Split Property.fs across multiple files (#247, @adam-becker)
  • Add support for LINQ via Hedgehog.Linq namespace (#244, @adam-becker)
  • Switch to Fable.Mocha (#196, @ThisFunctionalTom)

v0.9.0

3 years ago
  • Add Gen.single and Gen.decimal.
  • Add Property.recheck.
  • Remove additional space in Tree.render.
  • Improve Range documentation.
  • Improve Gen.list.
  • Add Tree.render.
  • Improve Gen.frequency documentation.
  • Mangle compiled name for functions that cannot be called from langs other than F#.
    • Explicitly instantiate static inline functions for C# callers.
  • Add missing internal conversions to bigint in Numeric.fs.
  • Add LINQ support for Range.

v0.8.4

3 years ago

Target .NET Standard 2.0 and .NET Framework 4.5.

v0.8.3

4 years ago

Improve Int64 generator.

v0.8.2

5 years ago

Improve DateTime, UInt32 and UInt64 generators.