FEST-Assert 1.2: Fluent Interface for Assertions

  • submit to reddit

Alex is a programmer with special interest in Java, API design, testing and OOP. He is the creator of FEST, an open source project that aims at making testing of Swing and JavaFX user interfaces (and testing in general) easier. Alex is currently working at Google. The opinions expressed here represent his own and not those of his employer. Alex is a DZone MVB and is not an employee of DZone and has posted 39 posts at DZone. You can read more from them at their website. View Full User Profile

We are proud to announce that FEST-Assert 1.2 is out!

FEST-Assert is an “assertThat” library that provides a fluent interface for writing assertions. Its main goal is to improve test code readability and make maintenance of tests easier.

Example:

int removed = employees.removeFired();
assertThat(removed).isZero();
 
List newEmployees = employees.hired(TODAY);
assertThat(newEmployees).hasSize(6)
.contains(frodo, sam);
 
String[] newHires = employees.newHiresNames();
assertThat(newHires).containsOnly("Gandalf", "Arwen", "Gimli");
 
assertThat(yoda).isInstanceOf(Jedi.class)
.isEqualTo(foundJedi)
.isNotEqualTo(foundSith);

Release notes

Bug
  • [FEST-198] – Fix ImageAssert.read to compile successfully against Java 1.5
  • [FEST-218] – Inconsistency in parameter names in assertions
  • [FEST-228] – Error message when comparing Strings is not consistent between JUnit and TestNG
  • [FEST-229] – Descriptions are not evaluated lazily when an assertion fails
  • [FEST-230] – Validation of arguments not throwing correct Exceptions.
Improvement
  • [FEST-147] – Allow reuse of formatting helpers in class Formatting by making them protected
  • [FEST-157] – Add isNotEqualByComparingTo() for ease of use in BigDecimalAssert
  • [FEST-165] – Make Assertions non-final and make its constructor protected
  • [FEST-166] – Make assertion classes non-final
  • [FEST-168] – Add methods "is" and "isNot" to all assertions
  • [FEST-242] – Nicer debugging output with JUnit’s ComparisonFailure
  • [FEST-245] – Deprecate ‘Delta’ class in FloatAssert and replace it with top-level Delta class
New Feature Task

For more details about new, updated or removed classes, please read the change report.

You can download the latest release here (file fest-assert-1.2.zip.) FEST-Assert requires Java SE 5.0 or later.

Here are some useful links:

Feedback is always appreciated :)

0
Average: 5 (1 vote)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)