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

Side by Side Diff: packages/polymer/test/bind_properties_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 import 'dart:async';
6 import 'dart:html';
7 import 'package:unittest/unittest.dart';
8 import 'package:unittest/html_config.dart';
9 import 'package:polymer/polymer.dart';
10
11 export 'package:polymer/init.dart';
12
13 class XBaz extends PolymerElement {
14 @published
15 int get val => readValue(#val);
16 set val(v) => writeValue(#val, v);
17
18 XBaz.created() : super.created();
19 }
20
21 class XBar extends PolymerElement {
22 @published
23 int get val => readValue(#val);
24 set val(v) => writeValue(#val, v);
25
26 XBar.created() : super.created();
27 }
28
29 class XBat extends PolymerElement {
30 @published
31 int get val => readValue(#val);
32 set val(v) => writeValue(#val, v);
33
34 XBat.created() : super.created();
35 }
36
37 class XFoo extends PolymerElement {
38 @published
39 int get val => readValue(#val);
40 set val(v) => writeValue(#val, v);
41
42 XFoo.created() : super.created();
43 }
44
45 @CustomTag('bind-properties-test')
46 class XTest extends PolymerElement {
47 XTest.created() : super.created();
48
49 @published var obj;
50
51 ready() {
52 obj = toObservable({'path': {'to': {'value': 3}}});
53 readyCalled();
54 }
55 }
56
57 var completer = new Completer();
58 waitForElementReady(_) => completer.future;
59 readyCalled() {
60 completer.complete(null);
61 }
62
63 @initMethod
64 init() {
65 // TODO(sigmund): investigate why are we still seeing failures due to the
66 // order of registrations, then use @CustomTag instead of this.
67 Polymer.register('x-foo', XFoo);
68 Polymer.register('x-bar', XBar);
69 Polymer.register('x-baz', XBaz);
70 Polymer.register('x-bat', XBat);
71
72 useHtmlConfiguration();
73
74 setUp(() => Polymer.onReady.then(waitForElementReady));
75
76 test('bind properties test', () {
77 var e = document.querySelector('bind-properties-test');
78 var foo = e.shadowRoot.querySelector('#foo');
79 var bar = foo.shadowRoot.querySelector('#bar');
80 var bat = foo.shadowRoot.querySelector('#bat');
81 var baz = bar.shadowRoot.querySelector('#baz');
82
83 expect(foo.val, 3);
84 expect(bar.val, 3);
85 expect(bat.val, 3);
86 expect(baz.val, 3);
87
88 foo.val = 4;
89
90 expect(foo.val, 4);
91 expect(bar.val, 4);
92 expect(bat.val, 4);
93 expect(baz.val, 4);
94
95 baz.val = 5;
96
97 expect(foo.val, 5);
98 expect(bar.val, 5);
99 expect(bat.val, 5);
100 expect(baz.val, 5);
101
102 e.obj['path']['to']['value'] = 6;
103
104 expect(foo.val, 6);
105 expect(bar.val, 6);
106 expect(bat.val, 6);
107 expect(baz.val, 6);
108 });
109 }
OLDNEW
« no previous file with comments | « packages/polymer/test/bind_mdv_test.html ('k') | packages/polymer/test/bind_properties_test.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698