jayway/awaitility — pull request #14 by SpOOnman (2014-10-13 08:38:44+00:00)
Title: ConditionEvaluationListener support for AssertionCondition

This pull request adds support for ConfitionEvaluationListener for AssertionCondition. Right now, as of version 1.6.1 only AbstractHamcrestCondition is supported.

I refactored AbstractHamcrestCondition and I extracted StopWatch class and other methods that handled condition matches and mismatches to a new ConditionEvaluationHandler class. Then it was easy to implement that handler to AssertionCondition.

I have a concern with this declaration in AssertionCondition:

private final ConditionEvaluationHandler conditionEvaluationHandler;

Should it be Void or String? I've chosed String, because lastErrorMessage has type String.

Please review.