Alex is a Software Engineer working on Android development tools, especially Android Studio, at Google. His interests include Java, API design, OOP, IDEs and testing. Alex spends some of his spare time working on Open Source, blogging, writing technical articles, and speaking at international conferences. 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 49 posts at DZone. You can read more from them at their website. View Full User Profile

FEST-Assert 1.2: Fluent Interface for Assertions

11.05.2009
| 2046 views |
  • submit to reddit

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)
Published at DZone with permission of Alex Ruiz, author and DZone MVB.

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