OLD | NEW |
(Empty) | |
| 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 |
| 3 // BSD-style license that can be found in the LICENSE file. |
| 4 @TestOn('browser') |
| 5 library polymer_elements.test.paper_checked_element_behavior_test; |
| 6 |
| 7 import 'dart:async'; |
| 8 import 'package:polymer_elements/iron_a11y_keys_behavior.dart'; |
| 9 import 'package:polymer_elements/iron_checked_element_behavior.dart'; |
| 10 import 'package:polymer_elements/iron_button_state.dart'; |
| 11 import 'package:polymer_elements/iron_control_state.dart'; |
| 12 import 'package:polymer_elements/iron_form_element_behavior.dart'; |
| 13 import 'package:polymer_elements/iron_validatable_behavior.dart'; |
| 14 import 'package:polymer_elements/paper_checked_element_behavior.dart'; |
| 15 import 'package:polymer_elements/paper_inky_focus_behavior.dart'; |
| 16 import 'package:polymer_elements/paper_ripple_behavior.dart'; |
| 17 import 'package:polymer/polymer.dart'; |
| 18 import 'package:web_components/web_components.dart'; |
| 19 import 'package:test/test.dart'; |
| 20 import 'common.dart'; |
| 21 |
| 22 main() async { |
| 23 await initPolymer(); |
| 24 |
| 25 group('PaperCheckedElementBehavior', () { |
| 26 TestChecked checked; |
| 27 |
| 28 setUp(() { |
| 29 checked = fixture('basic'); |
| 30 }); |
| 31 |
| 32 test('element checked when tapped to check', () { |
| 33 tap(checked); |
| 34 expect(checked.checked, isTrue); |
| 35 }); |
| 36 |
| 37 test('element checked when active', () { |
| 38 checked.active = true; |
| 39 expect(checked.checked, isTrue); |
| 40 }); |
| 41 |
| 42 test('element not checked when disabled and made active', () { |
| 43 checked.disabled = true; |
| 44 checked.active = true; |
| 45 expect(checked.checked, isFalse); |
| 46 }); |
| 47 |
| 48 test('element not checked when disabled and tapped', () { |
| 49 checked.disabled = true; |
| 50 tap(checked); |
| 51 expect(checked.checked, isFalse); |
| 52 }); |
| 53 |
| 54 test('element ripple has checked attribute when element tapped to check', |
| 55 () { |
| 56 tap(checked); |
| 57 expect(checked.hasRipple(), isTrue); |
| 58 expect(checked.getRipple().getAttribute('checked'), isNotNull); |
| 59 }); |
| 60 |
| 61 test( |
| 62 'element ripple does not have checked attribute when element tapped to ' |
| 63 'uncheck', () { |
| 64 tap(checked); |
| 65 tap(checked); |
| 66 expect(checked.getRipple().getAttribute('checked'), isNull); |
| 67 }); |
| 68 }); |
| 69 } |
| 70 |
| 71 @PolymerRegister('test-checked') |
| 72 class TestChecked extends PolymerElement |
| 73 with |
| 74 IronA11yKeysBehavior, |
| 75 IronButtonState, |
| 76 IronControlState, |
| 77 PaperRippleBehavior, |
| 78 PaperInkyFocusBehavior, |
| 79 IronFormElementBehavior, |
| 80 IronValidatableBehavior, |
| 81 IronCheckedElementBehavior, |
| 82 PaperCheckedElementBehavior { |
| 83 TestChecked.created() : super.created(); |
| 84 } |
OLD | NEW |