anchor.diff:  }
   class Class {
     @NoInline()
  -  Class() {
  -    @{2:Class}throw '$EXCEPTION_MARKER';
  +  @{2:Class}Class() {
  +    @{3:Class}throw '$EXCEPTION_MARKER';
     }
   }
   ''',
  
positive.code:       "Unexpected stack trace lines for test:\n${test.code}\n"
        "Actual:\n${dartStackTrace.join('\n')}\n"
        "Unexpected:\n${test.unexpectedLines.join('\n')}\n");
  
    print("Deleting '${tmpDir.path}'.");
    tmpDir.deleteSync(recursive: true);
  
negative.code:         fileName = sourceMap.urls[targetEntry.sourceUrlId];
        }
        dartStackTrace.add(new StackTraceLine(methodName, fileName,
            targetEntry.sourceLine + 1, targetEntry.sourceColumn + 1,
            isMapped: true));
      }
    }
  
    int expectedIndex = 0;
    List<StackTraceLine> unexpectedLines = <StackTraceLine>[];
    List<StackTraceLine> unexpectedBeforeLines = <StackTraceLine>[];
    List<StackTraceLine> unexpectedAfterLines = <StackTraceLine>[];
    for (StackTraceLine line in dartStackTrace) {
      bool found = false;
      if (expectedIndex < test.expectedLines.length) {
        StackTraceLine expectedLine = test.expectedLines[expectedIndex];
        if (line.methodName == expectedLine.methodName &&
            line.lineNo == expectedLine.lineNo &&
            line.columnNo == expectedLine.columnNo) {
          found = true;
          expectedIndex++;
        }
      }
  