Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(308)

Unified Diff: tests/language/import_self_test.dart

Issue 489993004: Private names are not exported, not even if the library imports itself (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/parser.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/language/import_self_test.dart
===================================================================
--- tests/language/import_self_test.dart (revision 0)
+++ tests/language/import_self_test.dart (working copy)
@@ -0,0 +1,28 @@
+// 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.
+//
+// Check that private names cannot be imported even if the library imports
+// itself.
+
+library import_self;
+
+import "package:expect/expect.dart";
+
+// Eliminate the import of the unmodified file or else the analyzer
+// will generate the static warning in the import_self_test_none case.
+import "import_self_test.dart" as p; /// 01: continued
+
+var _x = "The quick brown fox jumps over the dazy log";
+
+main() {
+ var t = "Falsches Üben von Xylophonmusik quält jeden größeren Zwerg";
+
+ // Check that referencing p._x causes a warning from the analyzer,
+ // and the runtime fails to resolve p._x, even though it refers to
+ // top level variable _x of this file.
+ Expect.throws(() { t = p._x; }, /// 01: static type warning
+ (e) => e is NoSuchMethodError); /// 01: continued
+
+ Expect.isTrue(t.endsWith("Zwerg"));
+}
« no previous file with comments | « runtime/vm/parser.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698