Chromium Code Reviews| Index: tests/compiler/dart2js/sourcemaps/stacktrace_test.dart |
| diff --git a/tests/compiler/dart2js/sourcemaps/stacktrace_test.dart b/tests/compiler/dart2js/sourcemaps/stacktrace_test.dart |
| index 89d1ff7ba671e52a987b9ea9da1a48ec1a63e5b7..0f47e930a36e001c3c837a014a963de0a3804691 100644 |
| --- a/tests/compiler/dart2js/sourcemaps/stacktrace_test.dart |
| +++ b/tests/compiler/dart2js/sourcemaps/stacktrace_test.dart |
| @@ -15,6 +15,7 @@ import 'package:expect/expect.dart'; |
| import 'package:source_maps/source_maps.dart'; |
| import 'package:source_maps/src/utils.dart'; |
| +import '../annotated_code_helper.dart'; |
| import '../source_map_validator_helper.dart'; |
| const String EXCEPTION_MARKER = '>ExceptionMarker<'; |
| @@ -184,60 +185,29 @@ const int _CR = 0x0D; |
| const int _LBRACE = 0x7B; |
| Test processTestCode(String code) { |
| - StringBuffer codeBuffer = new StringBuffer(); |
| Map<int, StackTraceLine> stackTraceMap = <int, StackTraceLine>{}; |
| List<StackTraceLine> unexpectedLines = <StackTraceLine>[]; |
| - int index = 0; |
| - int lineNo = 1; |
| - int columnNo = 1; |
| - while (index < code.length) { |
| - int charCode = code.codeUnitAt(index); |
| - switch (charCode) { |
| - case _LF: |
| - codeBuffer.write('\n'); |
| - lineNo++; |
| - columnNo = 1; |
| - break; |
| - case _CR: |
| - if (index + 1 < code.length && code.codeUnitAt(index + 1) == _LF) { |
| - index++; |
| - } |
| - codeBuffer.write('\n'); |
| - lineNo++; |
| - columnNo = 1; |
| - break; |
| - case 0x40: |
| - if (index + 1 < code.length && code.codeUnitAt(index + 1) == _LBRACE) { |
| - int colonIndex = code.indexOf(':', index); |
| - int endIndex = code.indexOf('}', index); |
| - String methodName = code.substring(colonIndex + 1, endIndex); |
| - String indexText = code.substring(index + 2, colonIndex); |
| - StackTraceLine stackTraceLine = |
| - new StackTraceLine(methodName, INPUT_FILE_NAME, lineNo, columnNo); |
| - if (indexText == '') { |
| - unexpectedLines.add(stackTraceLine); |
| - } else { |
| - int stackTraceIndex = int.parse(indexText); |
| - assert(!stackTraceMap.containsKey(stackTraceIndex)); |
| - stackTraceMap[stackTraceIndex] = stackTraceLine; |
| - } |
| - index = endIndex; |
| - } else { |
| - codeBuffer.writeCharCode(charCode); |
| - columnNo++; |
| - } |
| - break; |
| - default: |
| - codeBuffer.writeCharCode(charCode); |
| - columnNo++; |
| + AnnotatedCode annotatedCode = processAnnotatedCode(code); |
| + for (Annotation annotation in annotatedCode.annotations) { |
| + int colonIndex = annotation.text.indexOf(':'); |
| + String indexText = annotation.text.substring(0, colonIndex); |
| + String methodName = annotation.text.substring(colonIndex + 1); |
| + StackTraceLine stackTraceLine = new StackTraceLine( |
| + methodName, INPUT_FILE_NAME, annotation.lineNo, annotation.columnNo); |
| + if (indexText == '') { |
| + unexpectedLines.add(stackTraceLine); |
| + } else { |
| + int stackTraceIndex = int.parse(indexText); |
| + assert(!stackTraceMap.containsKey(stackTraceIndex)); |
| + stackTraceMap[stackTraceIndex] = stackTraceLine; |
| } |
| - index++; |
| } |
| List<StackTraceLine> expectedLines = <StackTraceLine>[]; |
| for (int stackTraceIndex in (stackTraceMap.keys.toList()..sort()).reversed) { |
| expectedLines.add(stackTraceMap[stackTraceIndex]); |
| } |
| - return new Test(codeBuffer.toString(), expectedLines, unexpectedLines); |
| + return new Test(annotatedCode.sourceCode /*codeBuffer.toString()*/, |
|
Siggi Cherem (dart-lang)
2017/01/24 21:05:59
remove comment :)
Johnni Winther
2017/01/25 13:28:14
Done.
|
| + expectedLines, unexpectedLines); |
| } |
| void main(List<String> arguments) { |