| Index: test/codegen/lib/mirrors/method_mirror_source_line_ending_test.dart
|
| diff --git a/test/codegen/lib/mirrors/method_mirror_source_line_ending_test.dart b/test/codegen/lib/mirrors/method_mirror_source_line_ending_test.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..c0593979c9fca8cca1fe30a2d61c154acd0db0ee
|
| --- /dev/null
|
| +++ b/test/codegen/lib/mirrors/method_mirror_source_line_ending_test.dart
|
| @@ -0,0 +1,34 @@
|
| +// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
|
| +// for details. All rights reserved. Use of this source code is governed by a
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| +// Note: These tests rely on specific line endings in the source files.
|
| +
|
| +import "dart:mirrors";
|
| +import "package:expect/expect.dart";
|
| +
|
| +import "method_mirror_source_line_ending_lf.dart";
|
| +import "method_mirror_source_line_ending_cr.dart";
|
| +import "method_mirror_source_line_ending_crlf.dart";
|
| +
|
| +main() {
|
| + String sourceOf(Function f) => (reflect(f) as ClosureMirror).function.source;
|
| +
|
| + // Source does not cross line breaks.
|
| + Expect.stringEquals('oneLineLF(x) => x;', sourceOf(oneLineLF));
|
| + Expect.stringEquals('oneLineCR(x) => x;', sourceOf(oneLineCR));
|
| + Expect.stringEquals('oneLineCRLF(x) => x;', sourceOf(oneLineCRLF));
|
| +
|
| + // Source includes line breaks.
|
| + Expect.stringEquals('multiLineLF(y) {\n return y + 1;\n}',
|
| + sourceOf(multiLineLF));
|
| + Expect.stringEquals('multiLineCR(y) {\r return y + 1;\r}',
|
| + sourceOf(multiLineCR));
|
| + Expect.stringEquals('multiLineCRLF(y) {\r\n return y + 1;\r\n}',
|
| + sourceOf(multiLineCRLF));
|
| +
|
| + // First and last characters separated from middle by line breaks.
|
| + Expect.stringEquals('a\n(){\n}', sourceOf(a));
|
| + Expect.stringEquals('b\r(){\r}', sourceOf(b));
|
| + Expect.stringEquals('c\r\n(){\r\n}', sourceOf(c));
|
| +}
|
|
|