All Versions
Latest Version
Avg Release Cycle
47 days
Latest Release
752 days ago

Changelog History
Page 3

  • v0.6.0 Changes

    July 20, 2018

    Jar's can be found here:
    API Maturity : Almost Stable
    Implementation Maturity : Development

    ๐Ÿ— I provide more or less a stable API for users of Atrium. Only the ReporterBuilder, which you use to build your own assertion verb might slightly change its API (so migrating will be just a few lines in one file).
    ๐Ÿ— There are most likely not any breaking changes in the API of the assertion functions/builders.
    However, I do not provide yet a stable API for the core of Atrium -- this might affect you as well if you write your own assertion functions. It also affects you if you provide your own implementation of the core of Atrium.

    ๐Ÿ†• New Features:

    • isNumericallyEqualTo and isNotNumericallyEqualTo for BigDecimal
    • isEqualIncludingScale and isNotEqualIncludingScale for BigDecimal
      => gives a hint in case of a failure where the assertion would have hold with isNumericallyEqualTo / isNotNumericallyEqualTo
    • ๐Ÿ—„ overload of toBe for BigDecimal which is deprecated, throws an UnsupportedOperationException and points the user to the above functions
    • same same but different for the overload of notToBe for BigDecimal
    • toBeWithErrorTolerance for floating point numbers (Float, Double, BigDecimal)
    • isLessThan, isLessThanOrEquals etc. is now available for Comparable<T> and no longer only for Number
    • containsRegex(...) as shortcut for contains.atLeast(1).regex(...)
    • โ†” integrated contains not into the sophisticated contains assertion builder (for CharSequence and Iterable)
      ๐Ÿ‘€ => so that you see how many times it was contained when the assertion fails
    • ๐Ÿ‘ identification lambdas for Iterable with nullable types. For instance, listOf(null, 1).contains { toBe(1) } was not possible so far (only List<Int> was supported)
    • ๐Ÿ‘€ made AssertionPairFormatter configurable, one can now chose for instance a multi-line formatter instead of same-line (see README#your-first-assertion for an example)
    • โ†ช workaround for a Bug in Kotlin (please upvote it) which causes that returnValueOf cannot be used for methods with overloads.
    • โœ… I generalised the DownCaster to a TypeTransformer which you can reuse by using the impl-function _typeTransformation. You find an example for Either in TypeTransformerSpec.
    • I added a few issues with label help wanted so that you get an easy start to contribute to Atrium.

    ๐Ÿ’ฅ Breaking Changes:

    • โœ‚ removed deprecated ReporterBuilder::withDetailedObjectFormatter

    ๐Ÿ—„ Deprecation:

    • ReporterBuilder::withSameLineTextAssertionFormatter -> use the suggested replacement

    ๐Ÿš€ Not included in this release yet

    • ๐Ÿ— sophisticated assertion builder for toBe with error tolerance for floating point numbers
    • failure hint for toBe in conjuction with Float or Double
    • simplify the creation of failure hints, make it reusable for users