One JDK 5 feature I have started using to clean up my testing is varargs, the ... (or … for the entity-aware). It is particularly elegant to turn this:
public void testWidgetProcessor() throws Exception {
final Widget expected1 = createWidget(), expected2 = createWidget();
processor.swallow(new Widget[]{
expected1,
expected2
});
assertWidgetsGained(new Widget[] {
expected1,
expected2
});
} Into this:
public void testWidgetProcessor() throws Exception {
final Widget expected1 = createWidget(), expected2 = createWidget();
processor.swallow(expected1, expected2);
assertWidgetsGained(expected1, expected2);
} And even better:
public void testWidgetProcessorHandlesTrivialCase() throws Exception {
assertWidgetsGained(); // nothing swallowed, nothing gained
}
No comments:
Post a Comment