Index: tests/lib/mirrors/repeated_private_anon_mixin_app_test.dart |
diff --git a/tests/lib/mirrors/repeated_private_anon_mixin_app_test.dart b/tests/lib/mirrors/repeated_private_anon_mixin_app_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7a7a5adcaa6903e24e32412d3031ec55c203957c |
--- /dev/null |
+++ b/tests/lib/mirrors/repeated_private_anon_mixin_app_test.dart |
@@ -0,0 +1,40 @@ |
+// Copyright (c) 2013, 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. |
+ |
+library test.repeated_private_anon_mixin_app; |
+ |
+// Regression test for symbol mangling. |
+ |
+import 'dart:mirrors'; |
+import 'package:expect/expect.dart'; |
+ |
+import 'repeated_private_anon_mixin_app1.dart' as lib1; |
+import 'repeated_private_anon_mixin_app2.dart' as lib2; |
+ |
+testMA() { |
+ Symbol name1 = reflectClass(lib1.MA).superclass.simpleName; |
+ Symbol name2 = reflectClass(lib2.MA).superclass.simpleName; |
+ |
+ Expect.equals('lib._S with lib._M', MirrorSystem.getName(name1)); |
+ Expect.equals('lib._S with lib._M', MirrorSystem.getName(name2)); |
+ |
+ Expect.notEquals(name1, name2); |
+ Expect.notEquals(name2, name1); |
+} |
+ |
+testMA2() { |
+ Symbol name1 = reflectClass(lib1.MA2).superclass.simpleName; |
+ Symbol name2 = reflectClass(lib2.MA2).superclass.simpleName; |
+ |
+ Expect.equals('lib._S with lib._M, lib._M2', MirrorSystem.getName(name1)); |
+ Expect.equals('lib._S with lib._M, lib._M2', MirrorSystem.getName(name2)); |
+ |
+ Expect.notEquals(name1, name2); |
+ Expect.notEquals(name2, name1); |
+} |
+ |
+main() { |
+ testMA(); |
+ testMA2(); |
+} |