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

Side by Side Diff: packages/polymer/test/event_path_declarative_test.dart

Issue 2312183003: Removed Polymer from Observatory deps (Closed)
Patch Set: Created 4 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
OLDNEW
(Empty)
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
3 // BSD-style license that can be found in the LICENSE file.
4
5 // This is ported from event-path-declarative-test.dart in polymer/test/html/.
6 // While the original test was intended to test event.path support, we changed
7 // the test structure just to check that the event was handled in the expected
8 // order.
9 library polymer.test.event_path_declarative_test;
10
11 import 'dart:async';
12 import 'dart:html';
13
14 import 'package:unittest/unittest.dart';
15 import 'package:unittest/html_config.dart';
16 import 'package:polymer/polymer.dart';
17
18 var _observedEvents = [];
19 var _testFired;
20
21 main() => initPolymer();
22
23 @reflectable
24 class XZug extends PolymerElement {
25 XZug.created() : super.created();
26
27 ready() {
28 shadowRoot.on['test-event'].listen((e) {
29 _testFired.complete(null);
30 });
31 }
32
33 contentTestEventHandler(e, detail, sender) {
34 _observedEvents.add(sender);
35 }
36
37 divTestEventHandler(e, detail, sender) {
38 _observedEvents.add(sender);
39 }
40
41 testEventHandler(e, detail, sender) {
42 _observedEvents.add(sender);
43 }
44 }
45
46 @reflectable
47 class XFoo extends PolymerElement {
48 XFoo.created() : super.created();
49
50 contentTestEventHandler(e, detail, sender) {
51 _observedEvents.add(sender);
52 }
53
54 divTestEventHandler(e, detail, sender) {
55 _observedEvents.add(sender);
56 }
57
58 testEventHandler(e, detail, sender) {
59 _observedEvents.add(sender);
60 }
61 }
62
63 @reflectable
64 class XBar extends PolymerElement {
65 XBar.created() : super.created();
66
67 contentTestEventHandler(e, detail, sender) {
68 _observedEvents.add(sender);
69 }
70
71 divTestEventHandler(e, detail, sender) {
72 _observedEvents.add(sender);
73 }
74
75 testEventHandler(e, detail, sender) {
76 _observedEvents.add(sender);
77 }
78 }
79
80 @initMethod init() {
81 useHtmlConfiguration();
82 // TODO(sigmund): switch back to use @CustomTag. We seem to be running into a
83 // problem where using @CustomTag doesn't guarantee that we register the tags
84 // in the following order (the query from mirrors is non deterministic).
85 // We shouldn't care about registration order though. See dartbug.com/14459
86 Polymer.register('x-zug', XZug);
87 Polymer.register('x-foo', XFoo);
88 Polymer.register('x-bar', XBar);
89
90 _testFired = new Completer();
91
92 setUp(() => Polymer.onReady);
93 test('event paths', () {
94 var target = document.querySelector('#target');
95 target.dispatchEvent(new CustomEvent('test-event', canBubble: true));
96 return _testFired.future.then((_) {
97 var xBar = querySelector('x-bar');
98 var xBarDiv = xBar.shadowRoot.querySelector('#xBarDiv');
99 var xBarContent = xBar.shadowRoot.querySelector('#xBarContent');
100 var xFoo = xBar.shadowRoot.querySelector('x-foo');
101 var xFooDiv = xFoo.shadowRoot.querySelector('#xFooDiv');
102 var xFooContent = xFoo.shadowRoot.querySelector('#xFooContent');
103 var xZug = xFoo.shadowRoot.querySelector('x-zug');
104 var xZugDiv = xZug.shadowRoot.querySelector('#xZugDiv');
105 var xZugContent = xZug.shadowRoot.querySelector('#xZugContent');
106
107 var expectedPath = [
108 xBarContent,
109 xBarDiv,
110 xFooContent,
111 xZugContent,
112 xZugDiv,
113 xZug,
114 xFooDiv,
115 xFoo,
116 xBar
117 ];
118 debugName(e) => '${e.localName}#${e.id}';
119 expect(_observedEvents, expectedPath,
120 reason: '<br>\nexpected: ${expectedPath.map(debugName).join(',')}'
121 '<br>\nactual: ${_observedEvents.map(debugName).join(',')}');
122 });
123 });
124 }
OLDNEW
« no previous file with comments | « packages/polymer/test/event_handlers_test.html ('k') | packages/polymer/test/event_path_declarative_test.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698