Changelog History
Page 3
-
v0.2.0-beta.2_ Changes
September 16, 2019๐ Deprecated ..........
- Method
Generator.randoms(Long)
the generator should generate single values, not a sequence.
โ Added .....
- (Breaking) method
generate(Random): T
in interfaceGenerator
to generate single value. checkForAll
. An alternative toforAll
allowing to use assertion (throw in case of error) instead of returning a boolean. It can be especially helpful to more descriptive message about what is wrong.- ๐
Generator.randomSequence
extension function to replace the deprecatedGenerator.randoms(Long): Sequence<T>
- Method
-
v0.2.0-beta.2 Changes
September 16, 2019๐ Deprecated
- Method
Generator.randoms(Long)
the generator should generate single values, not a sequence.
โ Added
- (Breaking) method
generate(Random): T
in interfaceGenerator
to generate single value. checkForAll
. An alternative toforAll
allowing to use assertion (throw in case of error) instead of returning a boolean. It can be especially helpful to more descriptive message about what is wrong.Generator.randomSequence
extension function to replace the deprecatedGenerator.randoms(Long): Sequence<T>
- Method
-
v0.2.0-beta.1_ Changes
September 15, 2019๐ Changed .......
- Wrap exceptions thrown by the properties so that an helpful message can be displayed (number of attempts, arguments, etc.)
โก๏ธ Dependencies Updated ....................
- Kotlin (from
1.3.41
to1.3.50
)
-
v0.2.0-beta.1 Changes
September 15, 2019๐ Changed
- Wrap exceptions thrown by the properties so that an helpful message can be displayed (number of attempts, arguments, etc.)
โก๏ธ Dependencies Updated
- Kotlin (from
1.3.41
to1.3.50
)
-
v0.2.0._ Changes
November 19, 2019๐ Deprecated ..........
samples
property inGenerator
interface. (Samples are about to be included in generation ofgenerate
) One should usewithSamples
andfrequency
instead.
โ Added .....
- ๐
andThen
operator to make easier building complex generation pipeline frequency
combinator, allowing to create a frequency-parametrized generator
โก๏ธ Dependencies Updated ....................
- Kotlin (from
1.3.50
to1.3.60
)
-
v0.1.0 Changes
July 28, 2019โ Added
StringCharSets
object withnumeric
,alphaLowerCase
,alphaUpperCase
,alpha
andalphaNumeric
. Sets of character to easily configure the string generator.0๏ธโฃ
kwik.iterations
system property to globally define a default number of iteration.
Modules extracted from core
- ๐ Generator API moved to
generator-api
module (artifactsgenerator-api-common
andgenerator-api-jvm
) - ๐ Generators for types of the kotlin standard library is moved to
[generator-stdlib]{.title-ref} module (artifacts
generator-stdlib-common
andgenerator-stdlib-jvm
) - ๐ The property evaluation is moved to [evaluator]{.title-ref}
(artifacts
evaluator-common
andevaluator-jvm
)
NOTE: The module
core
remains as an alias of all the modules above. So it is still easy to get started with Kwik by simply addingcore
as a dependency๐ฆ Package names changed (Breaking)
๐ฆ The packages have been renamed, and classes/files have been moved to ๐ reflect their new module (see Modules extracted from core)
- (Breaking) The content
com.github.jcornaz.kwik.generator
as been moved tocom.github.jcornaz.kwik.generator.stdlib
- (Breaking) The content
com.github.jcornaz.kwik
as been splitted intocom.github.jcornaz.kwik.generator.api
andcom.github.jcornaz.kwik.evaluator
โก๏ธ Dependencies Updated
- Kotlin (from
1.3.40
to1.3.41
)
-
v0.1.0-beta.1_ Changes
July 01, 2019โ Added .....
- (Breaking)
PropertyEvaluationContext
available as a type-receiver in property evaluation skipIf
function onPropertyEvaluationContext
allowing to skip a property evaluation for some specific set of input- Few aliases to get common generators:
positiveInts
,naturalInts
,negativeInts
andnonZeroInts
positiveLongs
,naturalLongs
,negativeLongs
andnonZeroLongs
positiveFloats
,negativeFloats
andnonZeroFloats
positiveDoubles
,negativeDoubles
andnonZeroDoubles
nonEmptyStrings
andnonBlankStrings
nonEmptyLists
,nonEmptySets
andnonEmptyMaps
๐ Changed .......
- โ Show test details in console only in case of success
- ๐ Improved exception message in case of falsified property (and introduce typed exception
FalsifiedPropertyError
โก๏ธ Dependencies Updated ....................
- Kotlin (from
1.3.31
to1.3.40
)
- (Breaking)
-
v0.1.0-beta.1 Changes
July 01, 2019โ Added
(Breaking)
PropertyEvaluationContext
available as a type-receiver in property evaluationskipIf
function onPropertyEvaluationContext
allowing to skip a property evaluation for some specific set of inputFew aliases to get common generators:
positiveInts
,naturalInts
,negativeInts
andnonZeroInts
positiveLongs
,naturalLongs
,negativeLongs
andnonZeroLongs
positiveFloats
,negativeFloats
andnonZeroFloats
positiveDoubles
,negativeDoubles
andnonZeroDoubles
nonEmptyStrings
andnonBlankStrings
nonEmptyLists
,nonEmptySets
andnonEmptyMaps
๐ Changed
- โ Show test details in console only in case of success
- ๐ Improved exception message in case of falsified property (and
introduce typed exception
FalsifiedPropertyError
โก๏ธ Dependencies Updated
- Kotlin (from
1.3.31
to1.3.40
)
-
v0.1.0-alpha.4_ Changes
June 10, 2019โ Added .....
filter
operator for generators- (Breaking)
samples
property in theGenerator
interface to improve management of the value samples (edge-cases) forAll
non-inline function, allowing to hide implementation details.- ๐
+
operator for generator, allowing to merge 2 operators. Example:nonZeroInts() = ints(max = -1) + ints(min = 1)
๐ Changed .......
- (Breaking) Renamed arguments
from
anduntil
offloats
anddoubles
generators for more consistency with the int and long generators - (Breaking) Make the lambda of
forAll
crossinline, to allow usage of a non-inline function and hide implementation details. - Now the size probability for strings a collections generators is similar for all sizes. Instead, they have empty and singletons instances as samples
combine
andcombineWith
now start by a combination of the source generators and will randomly add samples in the random generations.- Prevent error when passing a big min size/length without a max size/length for collection and strings generators
โ Removed .......
- (Breaking)
ratio
argument from thewithSamples
andwithNull
operators
-
v0.1.0-alpha.4 Changes
June 10, 2019โ Added
filter
operator for generators- (Breaking)
samples
property in theGenerator
interface to improve management of the value samples (edge-cases) forAll
non-inline function, allowing to hide implementation details.- ๐
+
operator for generator, allowing to merge 2 operators. Example:nonZeroInts() = ints(max = -1) + ints(min = 1)
๐ Changed
- (Breaking) Renamed arguments
from
anduntil
offloats
anddoubles
generators for more consistency with the int and long generators - (Breaking) Make the lambda of
forAll
crossinline, to allow usage of a non-inline function and hide implementation details. - Now the size probability for strings a collections generators is similar for all sizes. Instead, they have empty and singletons instances as samples
combine
andcombineWith
now start by a combination of the source generators and will randomly add samples in the random generations.- Prevent error when passing a big min size/length without a max size/length for collection and strings generators
โ Removed
- (Breaking)
ratio
argument from thewithSamples
andwithNull
operators