| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | |
| 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. | |
| 4 | |
| 5 import 'dart:async'; | |
| 6 import 'dart:html'; | |
| 7 import 'package:polymer/auto_binding.dart'; | |
| 8 import 'package:polymer/polymer.dart'; | |
| 9 import 'package:unittest/unittest.dart'; | |
| 10 import 'package:unittest/html_config.dart'; | |
| 11 | |
| 12 class TestModel { | |
| 13 var greeting = 'Hi'; | |
| 14 eventAction(e) { | |
| 15 e.detail.add('handled'); | |
| 16 } | |
| 17 } | |
| 18 | |
| 19 main() => initPolymer().then((zone) => zone.run(() { | |
| 20 useHtmlConfiguration(); | |
| 21 | |
| 22 setUp(() => Polymer.onReady); | |
| 23 | |
| 24 test('elements upgraded', () { | |
| 25 AutoBindingElement template = document.getElementById('one'); | |
| 26 template.model = new TestModel(); | |
| 27 | |
| 28 var completer = new Completer(); | |
| 29 var events = 0; | |
| 30 window.addEventListener('template-bound', (e) { | |
| 31 events++; | |
| 32 if (e.target.id == 'one') { | |
| 33 expect(e.target, template); | |
| 34 | |
| 35 var t = template; | |
| 36 var h = t.$['h']; | |
| 37 expect(h.text, t.model.greeting, reason: 'binding applied'); | |
| 38 var ce = t.fire('tap', onNode: h, detail: []); | |
| 39 expect(ce.detail, ['handled'], reason: 'element event handler fired'); | |
| 40 } | |
| 41 | |
| 42 if (events == 3) completer.complete(); | |
| 43 }); | |
| 44 | |
| 45 /// test dynamic creation | |
| 46 new Future(() { | |
| 47 var d = new DivElement(); | |
| 48 d.setInnerHtml('<template is="auto-binding">Dynamical' | |
| 49 ' <input value="{{value}}"><div>{{value}}</div></template>', | |
| 50 treeSanitizer: new _NullSanitizer()); | |
| 51 document.body.append(d); | |
| 52 }); | |
| 53 | |
| 54 return completer.future; | |
| 55 }); | |
| 56 })); | |
| 57 | |
| 58 class _NullSanitizer implements NodeTreeSanitizer { | |
| 59 sanitizeTree(Node node) {} | |
| 60 } | |
| OLD | NEW |