anchor.diff:    // which is recursively invoked in the case of async tests that
     // run synchronously. Bad things can then happen.
     _defer(() {
  +    if (_currentTest != testNum) {
  +      if (_tests[testNum].result == PASS) {
  +        _tests[testNum].error("Unexpected extra callbacks");
  +      }
  +      return; // Extraneous callback.
  +    }
       if (_currentTest < _tests.length) {
         final testCase = _tests[_currentTest];
         --testCase.callbackFunctionsOutstanding;
  
positive.code:  * TODO(gram) remove this when WebKit tests are working with new framework
   */
  void callbackDone() {
    _handleCallbackFunctionComplete();
  }
  
  /**
  
negative.code:  * Called when one of the callback functions is done with all expected
   * calls.
   */
  void _handleCallbackFunctionComplete(testNum) {
    // TODO (gram): we defer this to give the nextBatch recursive
    // stack a chance to unwind. This is a temporary hack but
    // really a bunch of code here needs to be fixed. We have a
  