Chromium Code Reviews| Index: tests/compiler/dart2js/hide_uri_test.dart |
| diff --git a/tests/compiler/dart2js/hide_uri_test.dart b/tests/compiler/dart2js/hide_uri_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..f6027ce3b7b9f96c11d1c038f830f516ebd31562 |
| --- /dev/null |
| +++ b/tests/compiler/dart2js/hide_uri_test.dart |
| @@ -0,0 +1,62 @@ |
| +// 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. |
| + |
| +import 'dart:async'; |
| + |
| +import 'package:expect/expect.dart'; |
| +import 'package:async_helper/async_helper.dart'; |
| +import 'memory_compiler.dart' show compilerFor, OutputCollector; |
| + |
| +const MEMORY_SOURCE_FILES = const <String, String> { |
| + 'main.dart': """ |
| +library main; |
| + |
| +@MirrorsUsed(targets: const ['main', 'lib']) |
| +import 'dart:mirrors'; |
| +import 'lib.dart'; |
| + |
| + |
| +class Subclass extends Super { |
| + int _private; |
| + |
| + int magic() => _private++; |
| +} |
| + |
| +main() { |
| + var objects = [new Super(), new Subclass()]; |
| + print(currentMirrorSystem().findLibrary(#main).uri); |
| +} |
| +""", |
| + 'lib.dart': """ |
| +library lib; |
| + |
| +class Super { |
| + int _private; |
| + |
| + int magic() => _private++; |
| +} |
| +""" |
| +}; |
| + |
| +runTest(bool hideUris) { |
| + OutputCollector collector = new OutputCollector(); |
| + var options = ["--minify"]; |
| + if (hideUris) options.add("--hide-uris"); |
| + var compiler = compilerFor(MEMORY_SOURCE_FILES, |
| + outputProvider: collector, |
| + options: options); |
| + return compiler.runCompiler(Uri.parse('memory:main.dart')).then((_) { |
| + String jsOutput = collector.getOutput('', 'js'); |
| + Expect.equals(!hideUris, jsOutput.contains("main.dart")); |
| + Expect.equals(!hideUris, jsOutput.contains("lib.dart")); |
|
blois
2014/09/22 21:26:09
I'm curious what the output is from an import such
floitsch
2014/09/22 21:28:10
I'm pretty sure it's absolute.
Fwiw the VM has sim
|
| + }); |
| +} |
| + |
| +void main() { |
| + asyncStart(); |
| + new Future.value() |
| + .then((_) => runTest(false)) |
| + .then((_) => runTest(true)) |
| + .whenComplete(asyncEnd); |
| +} |