Index: test/codegen/lib/html/wrapping_collections_test.dart |
diff --git a/test/codegen/lib/html/wrapping_collections_test.dart b/test/codegen/lib/html/wrapping_collections_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..218d255b46a456c3a602f3c65e6abe651f9a30c7 |
--- /dev/null |
+++ b/test/codegen/lib/html/wrapping_collections_test.dart |
@@ -0,0 +1,27 @@ |
+library wrapping_collection_test; |
+ |
+import 'dart:html'; |
+import 'dart:html_common'; |
+import 'dart:js' as js; |
+import 'package:unittest/unittest.dart'; |
+import 'package:unittest/html_config.dart'; |
+ |
+/// Test that if we access objects through JS-interop we get the |
+/// appropriate objects, even if dart:html maps them. |
+main() { |
+ test("Access through JS-interop", () { |
+ var performance = js.context['performance']; |
+ var entries = performance.callMethod('getEntries', const []); |
+ entries.forEach((x) { |
+ expect(x is js.JsObject, isTrue); |
+ }); |
+ }); |
+ |
+ test("Access through dart:html", () { |
+ var dartPerformance = js.JsNative.toTypedObject(js.context['performance']); |
+ var dartEntries = dartPerformance.getEntries(); |
+ dartEntries.forEach((x) { |
+ expect(x is PerformanceEntry, isTrue); |
+ }); |
+ }); |
+} |