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

Unified Diff: samples/third_party/todomvc/test/markdone_test.dart

Issue 76013002: "Reverting 30387" -- failures on IE (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month 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
Index: samples/third_party/todomvc/test/markdone_test.dart
diff --git a/samples/third_party/todomvc/test/markdone_test.dart b/samples/third_party/todomvc/test/markdone_test.dart
index 1622a438557bc7d84a44afa9f00663920e922f8e..e1318bd3b9b3754836c302e2b8cf2a73b1a9f8a2 100644
--- a/samples/third_party/todomvc/test/markdone_test.dart
+++ b/samples/third_party/todomvc/test/markdone_test.dart
@@ -9,8 +9,7 @@ import 'dart:html';
import 'package:polymer/polymer.dart';
import 'package:unittest/unittest.dart';
import 'package:unittest/html_config.dart';
-import '../web/elements/td_model.dart';
-import 'utils.dart';
+import '../web/model.dart';
Node findWithText(Node node, String text) {
if (node.text == text) return node;
@@ -28,6 +27,22 @@ Node findWithText(Node node, String text) {
return null;
}
+Node findShadowHost(Node node, ShadowRoot root) {
+ if (node is Element) {
+ var shadowRoot = (node as Element).shadowRoot;
+ if (shadowRoot == root) return node;
+ if (shadowRoot != null) {
+ var r = findShadowHost(shadowRoot, root);
+ if (r != null) return r;
+ }
+ }
+ for (var n in node.nodes) {
+ var r = findShadowHost(n, root);
+ if (r != null) return r;
+ }
+ return null;
+}
+
/**
* This test runs the TodoMVC app, adds a few todos, marks some as done
* programatically, and clicks on a checkbox to mark others via the UI.
@@ -36,19 +51,13 @@ main() {
initPolymer();
useHtmlConfiguration();
- TodoModel model;
-
- setUp(() => Polymer.onReady.then((_) {
- model = querySelector('td-model');
- return onPropertyInit(model, 'items');
- }));
+ setUp(() => Polymer.onReady);
test('mark done', () {
- model.items
- ..add(new Todo('one (unchecked)'))
- ..add(new Todo('two (unchecked)'))
- ..add(new Todo('three (checked)')..completed = true)
- ..add(new Todo('four (checked)'));
+ appModel.todos.add(new Todo('one (unchecked)'));
+ appModel.todos.add(new Todo('two (unchecked)'));
+ appModel.todos.add(new Todo('three (checked)')..done = true);
+ appModel.todos.add(new Todo('four (checked)'));
return new Future(() {
var body = querySelector('body');
@@ -56,8 +65,8 @@ main() {
var label = findWithText(body, 'four (checked)');
expect(label is LabelElement, true, reason: 'text is in a label: $label');
- ShadowRoot host = label.parentNode.parentNode;
- var node = host.querySelector('input');
+ var host = findShadowHost(body, label.parentNode);
+ var node = host.parent.querySelector('input');
expect(node is InputElement, true, reason: 'node is a checkbox');
expect(node.type, 'checkbox', reason: 'node type is checkbox');
expect(node.checked, isFalse, reason: 'element is unchecked');
« no previous file with comments | « samples/third_party/todomvc/test/markdone_shadow_test.html ('k') | samples/third_party/todomvc/test/markdone_test.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698