Releases: Seelengrab/Supposition.jl
Releases · Seelengrab/Supposition.jl
v0.3.5
Supposition v0.3.5
Breaking Changes
- None
New Features
- It is now possible to
map
over multiplePossibility
(See #45) - It is now possible to give a minimum & maximum value to
Data.Floats
Bug Fixes
- None
v0.3.4
Supposition v0.3.4
Breaking Changes
- None
New Features
- None
Bug Fixes
- The new printing wasn't applied to
Possibility
created from@composed
(#44) - Previously, using
@composed
on the same preexisting function more than once would overwrite the existingproduce!
behavior of those@composed
. This is fixed, so different invocations of@composed
on the same preexisting function receive distinctproduce!
implementations.
v0.3.3
Supposition v0.3.3
Breaking Changes
- None
New Features
- None
Bug Fixes
- The new printing caused issues when the predicate/mapping function given to
filter
/map
threw an error. In this case, the example is now omitted from the pretty printing.
v0.3.2
Supposition v0.3.2
Merged pull requests:
- Add glossary to explain jargon (#39) (@Seelengrab)
Closed issues:
v0.3.1
Supposition v0.3.1
Breaking Changes
- None
New Features
- None
Bug Fixes
- Calling
rand
in a property defined through@check function foo() .... end
i.e. in long-form previously didn't accurately report the failing input when replaying the counterexample for display purposes.
v0.3.0
Supposition v0.3.0
v0.3.0 brings a number of new features with it, as well as a very interesting new doc section considering how to use a test oracle when porting code to Julia!
Breaking Changes
- Due to an update of the internal format
DirectoryDB
uses for storing counterexamples, previously found failures can lead to an error when trying to replay them. The workaround to this is to modify the property in question to enforce immediate failure (e.g. by insertingreturn false
) after logging the generated inputs and manually inserting a unit test specifically for those inputs instead. Afterwards, you can delete thetest/SuppositionDB
directory to have Supposition.jl record newly found failures.
New Features
event!
, allowing recording of interesting objects (and optionally an associated label) in a property that may help with further debugging.WeightedNumbers
, for drawing a number from1:n
with the probability of picking any given number biased by a givenVector{Float64}
ofn
weights.WeightedSample
, for drawing from ann
-element long collection biased by ann
-element longVector{Float64}
of weights.- Both
@composed
and@check
now allow anonymous functions to be used, making for easier creation of properties and composedPossibility
without the need for coming up with a name. See their respective docstrings for more information.
Bug Fixes
@check
now always shows the duration taken, even when invoked standalone at the top level and not just when in a@testset
.
v0.2.1
Supposition v0.2.1
Breaking Changes
- None
New Features
- None
Bug Fixes
- Fixed a bug relating to the default database when no other database is specified, resulting in an error when trying to write to that database (#32)
v0.2.0
Supposition v0.2.0
Breaking changes
- None!
New Features
err_less
- a function for comparing two thrown objects of the same type (typically<: Exception
) for improving shrinking performance of exceptions with rich metadata- New errors are only reported once now, instead of every time they are encountered. This is based on the type & source location of the error.
Bugfixes
- Previously, errors shrunk badly when more than one distinct error was encountered.
v0.1.0
Supposition v0.1.0
Initial Release 🎉