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

Side by Side Diff: pkg/template_binding/test/template_binding_test.dart

Issue 558673004: update polymer js to 0.4.0 (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 3 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 template_binding.test.template_binding_test; 5 library template_binding.test.template_binding_test;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'dart:html'; 8 import 'dart:html';
9 import 'dart:js' show JsObject; 9 import 'dart:js' show JsObject;
10 import 'dart:math' as math; 10 import 'dart:math' as math;
(...skipping 1351 matching lines...) Expand 10 before | Expand all | Expand 10 after
1362 '<template ref=A repeat></template>'); 1362 '<template ref=A repeat></template>');
1363 1363
1364 var template = div.nodes[2]; 1364 var template = div.nodes[2];
1365 var model = new ObservableList.from(['Fry']); 1365 var model = new ObservableList.from(['Fry']);
1366 templateBind(template).model = model; 1366 templateBind(template).model = model;
1367 1367
1368 return new Future(() { 1368 return new Future(() {
1369 expect(div.nodes.length, 4); 1369 expect(div.nodes.length, 4);
1370 expect('Hi, Fry', div.nodes[3].text); 1370 expect('Hi, Fry', div.nodes[3].text);
1371 1371
1372 div.nodes[2].attributes['ref'] = 'B'; 1372 // In IE 11, MutationObservers do not fire before setTimeout.
1373 // So rather than using "then" to queue up the next test, we use a
1374 // MutationObserver here to detect the change to "ref".
Siggi Cherem (dart-lang) 2014/09/09 21:21:43 what if we use endOfMicrotask instead? or is that
jakemac 2014/09/10 16:30:00 I think its best to keep this in sync with the js
1375 var done = new Completer();
1376 new MutationObserver((mutations, observer) {
1377 expect(div.nodes.length, 5);
1378
1379 expect('Hola, Fry', div.nodes[3].text);
1380 expect('Hola, Leela', div.nodes[4].text);
1381 done.complete();
1382 }).observe(template, attributes: true, attributeFilter: ['ref']);
1383
1384 template.setAttribute('ref', 'B');
1373 model.add('Leela'); 1385 model.add('Leela');
1374 1386
1375 }).then(nextMicrotask).then((x) { 1387 return done.future;
1376 expect(div.nodes.length, 5);
1377
1378 expect('Hola, Fry', div.nodes[3].text);
1379 expect('Hola, Leela', div.nodes[4].text);
1380 }); 1388 });
1381 }); 1389 });
1382 1390
1383 test('Bound Ref', () { 1391 test('Bound Ref', () {
1384 var div = createTestHtml( 1392 var div = createTestHtml(
1385 '<template id=A>Hi, {{}}</template>' 1393 '<template id=A>Hi, {{}}</template>'
1386 '<template id=B>Hola, {{}}</template>' 1394 '<template id=B>Hola, {{}}</template>'
1387 '<template ref="{{ ref }}" repeat="{{ people }}"></template>'); 1395 '<template ref="{{ ref }}" repeat="{{ people }}"></template>');
1388 1396
1389 var template = div.nodes[2]; 1397 var template = div.nodes[2];
(...skipping 1332 matching lines...) Expand 10 before | Expand all | Expand 10 after
2722 class TestAccessorModel extends Observable { 2730 class TestAccessorModel extends Observable {
2723 @observable var value = 1; 2731 @observable var value = 1;
2724 var count = 0; 2732 var count = 0;
2725 2733
2726 @reflectable 2734 @reflectable
2727 get prop { 2735 get prop {
2728 count++; 2736 count++;
2729 return value; 2737 return value;
2730 } 2738 }
2731 } 2739 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698