Index: packages/web_components/test/html_import_annotation_test.dart |
diff --git a/packages/web_components/test/html_import_annotation_test.dart b/packages/web_components/test/html_import_annotation_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..6b81a58a8e1619d2552f28fdfaa4e59eb6519aeb |
--- /dev/null |
+++ b/packages/web_components/test/html_import_annotation_test.dart |
@@ -0,0 +1,34 @@ |
+// Copyright (c) 2015, 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. |
+@HtmlImport(importPath) |
+// This one will throw a build time warning, but should still work dynamically. |
+@HtmlImport('bad_import.html') |
+library web_components.test.html_import_annotation; |
+ |
+import 'dart:html'; |
+import 'package:unittest/html_config.dart'; |
+import 'package:unittest/unittest.dart'; |
+import 'package:web_components/web_components.dart'; |
+import 'foo/bar.dart'; |
+ |
+const String importPath = 'my_import.html'; |
+ |
+main() { |
+ useHtmlConfiguration(); |
+ |
+ test('adds import to head', () { |
+ return initWebComponents().then((_) { |
+ var my_import = document.head.querySelector('link[href="$importPath"]'); |
+ expect(my_import, isNotNull); |
+ expect(my_import.import.body.text, 'Hello world!\n'); |
+ |
+ var bar = document.head.querySelector('link[href="foo/bar.html"]'); |
+ expect(bar, isNotNull); |
+ expect(bar.import.body.text, 'bar\n'); |
+ |
+ var bad = document.head.querySelector('link[href="bad_import.html"]'); |
+ expect(bad.import, isNull); |
+ }); |
+ }); |
+} |