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

Side by Side Diff: tests/html/custom_elements_test.dart

Issue 33593003: Reapply remove upgradeCustomElement methods. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library custom_elements_test; 5 library custom_elements_test;
6 import 'dart:async'; 6 import 'dart:async';
7 import 'dart:html'; 7 import 'dart:html';
8 import 'package:unittest/html_individual_config.dart'; 8 import 'package:unittest/html_individual_config.dart';
9 import 'package:unittest/unittest.dart'; 9 import 'package:unittest/unittest.dart';
10 import 'utils.dart'; 10 import 'utils.dart';
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 var preElement = dom.children[0]; 111 var preElement = dom.children[0];
112 expect(preElement, isNotNull); 112 expect(preElement, isNotNull);
113 expect(preElement is HtmlElement, isTrue); 113 expect(preElement is HtmlElement, isTrue);
114 expect(preElement is CustomType, isFalse); 114 expect(preElement is CustomType, isFalse);
115 var firedOnPre = false; 115 var firedOnPre = false;
116 preElement.onFocus.listen((_) { 116 preElement.onFocus.listen((_) {
117 firedOnPre = true; 117 firedOnPre = true;
118 }); 118 });
119 119
120 document.register(tag, CustomType); 120 document.register(tag, CustomType);
121 Platform.upgradeCustomElements(dom); 121 upgradeCustomElements(dom);
122 122
123 var postElement = dom.children[0]; 123 var postElement = dom.children[0];
124 expect(postElement, isNotNull); 124 expect(postElement, isNotNull);
125 expect(postElement is CustomType, isTrue); 125 expect(postElement is CustomType, isTrue);
126 expect(postElement.createdCalled, isTrue); 126 expect(postElement.createdCalled, isTrue);
127 127
128 // Element from first query remains an UnknownElement. 128 // Element from first query remains an UnknownElement.
129 expect(preElement is HtmlElement, isTrue); 129 expect(preElement is HtmlElement, isTrue);
130 expect(preElement.parent, dom); 130 expect(preElement.parent, dom);
131 expect(dom.children.length, 1); 131 expect(dom.children.length, 1);
132 132
133 var firedOnPost = false; 133 var firedOnPost = false;
134 postElement.onFocus.listen((_) { 134 postElement.onFocus.listen((_) {
135 firedOnPost = true; 135 firedOnPost = true;
136 }); 136 });
137 // Event handlers persist on old and new element. 137 // Event handlers persist on old and new element.
138 postElement.dispatchEvent(new Event('focus')); 138 postElement.dispatchEvent(new Event('focus'));
139 expect(firedOnPre, isTrue); 139 expect(firedOnPre, isTrue);
140 expect(firedOnPost, isTrue); 140 expect(firedOnPost, isTrue);
141 }); 141 });
142 });*/ 142 });*/
143 143
144 group('innerHtml', () { 144 group('innerHtml', () {
145 test('query', () { 145 test('query', () {
146 var tag = nextTag; 146 var tag = nextTag;
147 document.register(tag, CustomType); 147 document.register(tag, CustomType);
148 var element = new DivElement(); 148 var element = new DivElement();
149 element.setInnerHtml('<$tag></$tag>', 149 element.setInnerHtml('<$tag></$tag>',
150 treeSanitizer: new NullTreeSanitizer()); 150 treeSanitizer: new NullTreeSanitizer());
151 » Platform.upgradeCustomElements(element); 151 » upgradeCustomElements(element);
152 document.body.nodes.add(element); 152 document.body.nodes.add(element);
153 var queried = query(tag); 153 var queried = query(tag);
154 154
155 expect(queried, isNotNull); 155 expect(queried, isNotNull);
156 expect(queried is CustomType, isTrue); 156 expect(queried is CustomType, isTrue);
157 expect(queried.createdCalled, isTrue); 157 expect(queried.createdCalled, isTrue);
158 }); 158 });
159 159
160 test('query id', () { 160 test('query id', () {
161 var tag = nextTag; 161 var tag = nextTag;
162 document.register(tag, CustomType); 162 document.register(tag, CustomType);
163 var element = new DivElement(); 163 var element = new DivElement();
164 element.setInnerHtml('<$tag id="someid"></$tag>', 164 element.setInnerHtml('<$tag id="someid"></$tag>',
165 treeSanitizer: new NullTreeSanitizer()); 165 treeSanitizer: new NullTreeSanitizer());
166 » Platform.upgradeCustomElements(element); 166 » upgradeCustomElements(element);
167 document.body.nodes.add(element); 167 document.body.nodes.add(element);
168 var queried = query('#someid'); 168 var queried = query('#someid');
169 169
170 expect(queried, isNotNull); 170 expect(queried, isNotNull);
171 expect(queried is CustomType, isTrue); 171 expect(queried is CustomType, isTrue);
172 expect(queried.id, "someid"); 172 expect(queried.id, "someid");
173 }); 173 });
174 }); 174 });
175 175
176 group('lifecycle', () { 176 group('lifecycle', () {
177 test('created', () { 177 test('created', () {
178 int oldCount = customCreatedCount; 178 int oldCount = customCreatedCount;
179 var tag = nextTag; 179 var tag = nextTag;
180 document.register(tag, CustomType); 180 document.register(tag, CustomType);
181 var element = new DivElement(); 181 var element = new DivElement();
182 element.setInnerHtml('<$tag></$tag>', 182 element.setInnerHtml('<$tag></$tag>',
183 treeSanitizer: new NullTreeSanitizer()); 183 treeSanitizer: new NullTreeSanitizer());
184 Platform.upgradeCustomElements(element); 184 upgradeCustomElements(element);
185 document.body.nodes.add(element); 185 document.body.nodes.add(element);
186 expect(customCreatedCount, oldCount + 1); 186 expect(customCreatedCount, oldCount + 1);
187 }); 187 });
188 }); 188 });
189 189
190 group('mixins', () { 190 group('mixins', () {
191 test('can invoke mixin methods', () { 191 test('can invoke mixin methods', () {
192 var tag = nextTag; 192 var tag = nextTag;
193 document.register(tag, CustomType); 193 document.register(tag, CustomType);
194 194
195 var element = new Element.tag(tag); 195 var element = new Element.tag(tag);
196 element.invokeMixinMethod(); 196 element.invokeMixinMethod();
197 expect(element.mixinMethodCalled, isTrue); 197 expect(element.mixinMethodCalled, isTrue);
198 }); 198 });
199 }); 199 });
200 } 200 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698