| OLD | NEW |
| 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 import 'dart:async'; | 5 import 'dart:async'; |
| 6 import 'dart:html'; | 6 import 'dart:html'; |
| 7 import 'package:unittest/unittest.dart'; | 7 import 'package:unittest/unittest.dart'; |
| 8 import 'package:unittest/html_config.dart'; | 8 import 'package:unittest/html_config.dart'; |
| 9 import 'package:polymer/polymer.dart'; | 9 import 'package:polymer/polymer.dart'; |
| 10 | 10 |
| 11 @CustomTag('x-foo') | 11 @CustomTag('x-foo') |
| 12 class XFoo extends PolymerElement { | 12 class XFoo extends PolymerElement { |
| 13 @observable String bar = "baz"; | 13 @observable String bar = "baz"; |
| 14 | 14 |
| 15 XFoo.created() : super.created(); | 15 XFoo.created() : super.created(); |
| 16 | 16 |
| 17 @ComputedProperty('bar') | 17 @ComputedProperty('bar') |
| 18 String get ignore => readValue(#bar); | 18 String get ignore => readValue(#bar); |
| 19 | |
| 20 } | 19 } |
| 21 | 20 |
| 22 main() => initPolymer().run(() { | 21 main() => initPolymer().run(() { |
| 23 useHtmlConfiguration(); | 22 useHtmlConfiguration(); |
| 24 | 23 |
| 25 setUp(() => Polymer.onReady); | 24 setUp(() => Polymer.onReady); |
| 26 | 25 |
| 27 test('can inject bound html fragments', () { | 26 test('can inject bound html fragments', () { |
| 28 XFoo xFoo = querySelector('x-foo'); | 27 XFoo xFoo = querySelector('x-foo'); |
| 29 DivElement injectDiv = xFoo.$['inject']; | 28 DivElement injectDiv = xFoo.$['inject']; |
| 30 xFoo.injectBoundHTML('<span>{{bar}}</span>', injectDiv); | 29 xFoo.injectBoundHTML('<span>{{bar}}</span>', injectDiv); |
| 31 expect(injectDiv.innerHtml, '<span>baz</span>'); | 30 expect(injectDiv.innerHtml, '<span>baz</span>'); |
| 32 | 31 |
| 33 xFoo.bar = 'bat'; | 32 xFoo.bar = 'bat'; |
| 34 return new Future(() {}).then((_) { | 33 return new Future(() {}).then((_) { |
| 35 expect(injectDiv.innerHtml, '<span>bat</span>'); | 34 expect(injectDiv.innerHtml, '<span>bat</span>'); |
| 36 }); | 35 }); |
| 37 }); | 36 }); |
| 38 }); | 37 }); |
| OLD | NEW |