February 2014
Intermediate to advanced
160 pages
4h 59m
English
When Java 5 annotations were introduced, JUnit was quick to use them. Overall this has been a benefit, but one use in particular, the convenience of exception tests, leads to terse rather than concise code. Let’s understand the issues and then resolve them using—good guess—lambda expressions. We will see here that lambda expressions are not just another language feature; they alter the way we think and design applications.
Suppose we’re driving the design of a class, RodCutter, through unit tests and we expect a method maxProfit to throw an exception if the argument is zero. Let’s look at a few ways we can write the exception tests for it.
Here’s the test for the maxProfit method ...