OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 selectelement_test; | 5 library selectelement_test; |
6 import '../../pkg/unittest/lib/unittest.dart'; | 6 import '../../pkg/unittest/lib/unittest.dart'; |
7 import '../../pkg/unittest/lib/html_config.dart'; | 7 import '../../pkg/unittest/lib/html_config.dart'; |
8 import 'dart:html'; | 8 import 'dart:html'; |
9 | 9 |
10 main() { | 10 main() { |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 var options = [ | 48 var options = [ |
49 new OptionElement(), | 49 new OptionElement(), |
50 new OptionElement('data', 'two', false, true), | 50 new OptionElement('data', 'two', false, true), |
51 new OptionElement('data', 'two', false, true), | 51 new OptionElement('data', 'two', false, true), |
52 new OptionElement(), | 52 new OptionElement(), |
53 ]; | 53 ]; |
54 element.children.addAll(options); | 54 element.children.addAll(options); |
55 // Use last to make sure that the list was correctly wrapped. | 55 // Use last to make sure that the list was correctly wrapped. |
56 expect(element.options.last, equals(options[3])); | 56 expect(element.options.last, equals(options[3])); |
57 }); | 57 }); |
| 58 |
| 59 test('optgroup', () { |
| 60 var element = new SelectElement(); |
| 61 element.innerHtml = |
| 62 '<option>1</option>' |
| 63 '<optgroup>' |
| 64 '<option>2</option>' |
| 65 '</optgroup>'; |
| 66 |
| 67 expect(element.options.length, 2); |
| 68 element.selectedIndex = 1; |
| 69 |
| 70 var optGroup = element.children[1]; |
| 71 expect(optGroup is OptGroupElement, isTrue); |
| 72 expect(optGroup.children.single.selected, isTrue); |
| 73 expect(element.selectedOptions, optGroup.children); |
| 74 }); |
58 } | 75 } |
OLD | NEW |