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 library polymer.test.entered_view_test; | 5 library polymer.test.entered_view_test; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'dart:html'; | 8 import 'dart:html'; |
9 import 'package:polymer/polymer.dart'; | 9 import 'package:polymer/polymer.dart'; |
10 import 'package:unittest/unittest.dart'; | 10 import 'package:unittest/unittest.dart'; |
11 import 'package:unittest/html_config.dart'; | 11 import 'package:unittest/html_config.dart'; |
12 | 12 |
13 @reflectable | 13 @reflectable |
14 class XOuter extends PolymerElement { | 14 class XOuter extends PolymerElement { |
15 @observable bool expand = false; | 15 @observable bool expand = false; |
16 | 16 |
17 XOuter.created() : super.created(); | 17 XOuter.created() : super.created(); |
18 } | 18 } |
19 | 19 |
20 @reflectable | 20 @reflectable |
21 class XInner extends PolymerElement { | 21 class XInner extends PolymerElement { |
22 int enteredCount = 0; | 22 int enteredCount = 0; |
23 | 23 |
24 XInner.created() : super.created(); | 24 XInner.created() : super.created(); |
25 | 25 |
26 enteredView() { | 26 attached() { |
27 enteredCount++; | 27 enteredCount++; |
28 super.enteredView(); | 28 super.attached(); |
29 } | 29 } |
30 } | 30 } |
31 | 31 |
32 main() => initPolymer().run(() { | 32 main() => initPolymer().run(() { |
33 useHtmlConfiguration(); | 33 useHtmlConfiguration(); |
34 Polymer.register('x-inner', XInner); | 34 Polymer.register('x-inner', XInner); |
35 Polymer.register('x-outer', XOuter); | 35 Polymer.register('x-outer', XOuter); |
36 | 36 |
37 setUp(() => Polymer.onReady); | 37 setUp(() => Polymer.onReady); |
38 | 38 |
39 test('element created properly', () { | 39 test('element created properly', () { |
40 XOuter outer = querySelector('x-outer'); | 40 XOuter outer = querySelector('x-outer'); |
41 outer.expand = true; | 41 outer.expand = true; |
42 return outer.onMutation(outer.shadowRoot).then((_) { | 42 return outer.onMutation(outer.shadowRoot).then((_) { |
43 // Element upgrade is also using mutation observers. Wait another tick so | 43 // Element upgrade is also using mutation observers. Wait another tick so |
44 // it goes before we do. | 44 // it goes before we do. |
45 return new Future(() { | 45 return new Future(() { |
46 XInner inner = outer.shadowRoot.querySelector('x-inner'); | 46 XInner inner = outer.shadowRoot.querySelector('x-inner'); |
47 expect(inner.enteredCount, 1, reason: 'enteredView should be called'); | 47 expect(inner.enteredCount, 1, reason: 'attached should be called'); |
48 }); | 48 }); |
49 }); | 49 }); |
50 }); | 50 }); |
51 }); | 51 }); |
OLD | NEW |