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

Side by Side Diff: test/paper_radio_group_basic_test.dart

Issue 1418513006: update elements and fix some bugs (Closed) Base URL: git@github.com:dart-lang/polymer_elements.git@master
Patch Set: code review updates Created 5 years, 1 month 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
« no previous file with comments | « test/paper_radio_button_behavior_test.html ('k') | test/paper_ripple_behavior_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 @TestOn('browser') 4 @TestOn('browser')
5 library polymer_elements.test.paper_radio_group_basic_test; 5 library polymer_elements.test.paper_radio_group_basic_test;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'package:test/test.dart'; 8 import 'package:test/test.dart';
9 import 'package:web_components/web_components.dart'; 9 import 'package:web_components/web_components.dart';
10 import 'package:polymer_elements/paper_radio_group.dart'; 10 import 'package:polymer_elements/paper_radio_group.dart';
11 import 'common.dart'; 11 import 'common.dart';
12 12
13 main() async { 13 main() async {
14 await initWebComponents(); 14 await initWebComponents();
15 15
16 group('defaults', () { 16 group('defaults', () {
17 var LEFT_ARROW = 37; 17 var LEFT_ARROW = 37;
18 var RIGHT_ARROW = 39; 18 var RIGHT_ARROW = 39;
19
19 test('group can have no selection', () { 20 test('group can have no selection', () {
20 PaperRadioGroup g = fixture('NoSelection'); 21 PaperRadioGroup g = fixture('NoSelection');
21 expect(g.selected, isNull); 22 expect(g.selected, isNull);
22 var items = g.items; 23 var items = g.items;
23 expect(items.length, equals(3)); 24 expect(items.length, equals(3));
24 expect(items[0].checked, isFalse); 25 expect(items[0].checked, isFalse);
25 expect(items[1].checked, isFalse); 26 expect(items[1].checked, isFalse);
26 expect(items[2].checked, isFalse); 27 expect(items[2].checked, isFalse);
27 }); 28 });
29
28 test('group can have a selection', () { 30 test('group can have a selection', () {
29 PaperRadioGroup g = fixture('WithSelection'); 31 PaperRadioGroup g = fixture('WithSelection');
30 expect(g.selected, isNotNull); 32 expect(g.selected, isNotNull);
31 var items = g.items; 33 var items = g.items;
32 expect(items.length, equals(3)); 34 expect(items.length, equals(3));
33 expect(items[0].checked, isTrue); 35 expect(items[0].checked, isTrue);
34 expect(items[1].checked, isFalse); 36 expect(items[1].checked, isFalse);
35 expect(items[2].checked, isFalse); 37 expect(items[2].checked, isFalse);
36 expect(items[0].attributes['name'], equals(g.selected)); 38 expect(items[0].attributes['name'], equals(g.selected));
37 }); 39 });
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 await completer.future; 99 await completer.future;
98 }); 100 });
99 101
100 test('clicking the selected item should not deselect', () async { 102 test('clicking the selected item should not deselect', () async {
101 PaperRadioGroup g = fixture('WithSelection'); 103 PaperRadioGroup g = fixture('WithSelection');
102 var items = g.items; 104 var items = g.items;
103 expect(items[0].checked, isTrue); 105 expect(items[0].checked, isTrue);
104 tap(items[0]); 106 tap(items[0]);
105 // The selection should not change, but wait for a little bit just 107 // The selection should not change, but wait for a little bit just
106 // in case it would and an event would be fired. 108 // in case it would and an event would be fired.
107 await wait(200); 109 await wait(1);
108 110
109 expect(items[0].checked, isTrue); 111 expect(items[0].checked, isTrue);
110 expect(items[1].checked, isFalse); 112 expect(items[1].checked, isFalse);
111 expect(items[2].checked, isFalse); 113 expect(items[2].checked, isFalse);
112 }); 114 });
115
116 test('clicking the selected item should deselect if allow-empty-selection is set', () async {
117 var g = fixture('WithSelection');
118 g.allowEmptySelection = true;
119 var items = g.items;
120
121 expect(items[0].checked, true);
122 tap(items[0]);
123
124 // The selection should not change, but wait for a little bit just
125 // in case it would and an event would be fired.
126 await wait(1);
127
128 expect(items[0].checked, false);
129 expect(items[1].checked, false);
130 expect(items[2].checked, false);
131 });
113 }); 132 });
114 } 133 }
OLDNEW
« no previous file with comments | « test/paper_radio_button_behavior_test.html ('k') | test/paper_ripple_behavior_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698