Skip to content

Releases: maciejmikosik/quackery

0.17.0

12 Nov 11:50
Compare
Choose a tag to compare

fixed

  • timeout runner prevented program from exiting #60
  • assertEqual bug preventing comparison of primitive arrays

Incompatible changes.

  • changed api of timeout to expect java.time.Duration instead of double

0.16.0

25 Apr 01:06
Compare
Choose a tag to compare

Redesigned model of Test, Case and Suite.

Incompatible changes.

  • Test is now an interface instead of abstract class.
  • Case cannot be subclassed. It doesn't have run method anymore. Its static factory method returns Test instead of Case. Body is now top-level class instead of nested in Case.
  • Case, Suite and Test has no public fields now. They can be accessed by calling visit method.

0.15.0

03 Sep 13:54
Compare
Choose a tag to compare

Running

  • Method runIn(executor, test) was split into 2 separate methods run(in(executor, test)) #41
  • Created run(concurrent(test)) which runs tests using all available processors.
  • Fixed interruption propagation in threadScoped runner #58.
  • Implemented expect(throwable, test) decorator asserting that exception was thrown from test #40.

reporting

  • Clarified error message of AssertException.assertEquals #43.

helper methods (undocumented)

  • Provided method for renaming Test #53.
  • Provided methods for convenient creating successful and failing Case.

Junit

  • Junit runner no longer promotes single quackery tests into root.

Incompatible changes.

  • runIn(executor, test) method was removed from Runners.
  • undocumented Visitor was replaced by undocumented TraversingDecorator.

0.14.0

15 Aug 01:24
Compare
Choose a tag to compare

Redesigned integration with junit. Previously any problem with initialization of junit runner would cause InitializationException that prevented tests to be run. Now reporting of problems is more fine grained. Any problem with methods annotated with @Quackery or @org.junit.Test is caught during initialization and replaced by adding failing test to root Suite #44. Junit problems are ignored if there are no methods annotated with @org.junit.Test #51. Solved minor presentations issues #50, #56. Updated documentation #55.

0.13.2

12 Mar 18:48
Compare
Choose a tag to compare

fixes

  • fixed eclipse workarounds

v0.13.1

12 Mar 13:37
Compare
Choose a tag to compare

fixes

  • implemented workaround for eclipse bug displaying newline characters #38

0.13.0

01 Dec 20:53
Compare
Choose a tag to compare

improvements

  • created factory method for Case accepting lambda #37

0.12.0

28 Nov 22:04
Compare
Choose a tag to compare

improvements

  • implemented feature allowing QuackeryRunner to run junit tests #36

0.11.0

29 Nov 03:38
Compare
Choose a tag to compare

improvements

  • introduced native mechanism for running tests #30
  • implemented various strategies for running tests #34
  • implemented printing test report #33
  • added immutable option for collection contracts #27
  • added option for forbidding null element to collection contract #28
  • created ReportException as superclass for AssertException and AssumeException

fixes

  • allowed more than one method annotated with @Quackery #32
  • fixed QuackeryRunner so empty suite does not confuse junit #25

incompatible changes

  • moved QuackeryRunner to org.quackery.junit package
  • renamed Suite methods to add, addAll
  • renamed and moved AssertException and AssumeException
  • removed mutable option and made it default unless used immutable

0.10.0

13 Sep 17:03
Compare
Choose a tag to compare

improvements

  • added more tests to collection contract
  • checked againts illegal usage of collection contract

incompatible changes

  • renamed AssertionException.assertThat -> assertTrue
  • quacksLike(List.class) -> quacksLike(Collection.class).implementing(List.class)