anchor.diff:      _message = '';
   
       var f = (setUp == null) ? new Future.value() : new Future(setUp);
  -    return f.catchError(errorHandler('Setup'))
  +    return f.catchError(_errorHandler('Setup'))
           .then((_) {
             // Skip the test if setup failed.
             if (result != null) return new Future.value();
  
positive.code: 
    bool get isComplete => !enabled || result != null;
  
    errorHandler(stage) => (e) {
      var stack = getAttachedStackTrace(e);
      if (result == null || result == PASS) {
        if (e is TestFailure) {
  
negative.code:           ++_callbackFunctionsOutstanding;
            return testFunction();
          })
          .catchError(_errorHandler('Test'))
          .then((_) {
            _markCallbackComplete();
            if (result == null) {
  