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('datalistelement_dataview_test'); | 5 #library('datalistelement_dataview_test'); |
6 #import('../../pkg/unittest/unittest.dart'); | 6 #import('../../pkg/unittest/unittest.dart'); |
7 #import('../../pkg/unittest/html_config.dart'); | 7 #import('../../pkg/unittest/html_config.dart'); |
8 #import('dart:html'); | 8 #import('dart:html'); |
9 | 9 |
10 main() { | 10 main() { |
11 useHtmlConfiguration(); | 11 useHtmlConfiguration(); |
12 | 12 |
| 13 var isDataListElement = |
| 14 predicate((x) => x is DataListElement, 'is a DataListElement'); |
| 15 |
13 var div; | 16 var div; |
14 | 17 |
15 setUp(() { | 18 setUp(() { |
16 div = new DivElement(); | 19 div = new DivElement(); |
17 document.body.nodes.add(div); | 20 document.body.nodes.add(div); |
18 div.innerHTML = """ | 21 div.innerHTML = """ |
19 <input id="input" list="browsers" /> | 22 <input id="input" list="browsers" /> |
20 <datalist id="browsers"> | 23 <datalist id="browsers"> |
21 <option value="Chrome"> | 24 <option value="Chrome"> |
22 <option value="Firefox"> | 25 <option value="Firefox"> |
23 <option value="Internet Explorer"> | 26 <option value="Internet Explorer"> |
24 <option value="Opera"> | 27 <option value="Opera"> |
25 <option value="Safari"> | 28 <option value="Safari"> |
26 </datalist> | 29 </datalist> |
27 """; | 30 """; |
28 }); | 31 }); |
29 | 32 |
30 tearDown(() { | 33 tearDown(() { |
31 document.body.nodes.removeLast(); | 34 document.body.nodes.removeLast(); |
32 }); | 35 }); |
33 | 36 |
34 | 37 |
35 test('is', () { | 38 test('is', () { |
36 var list = document.query('#browsers'); | 39 var list = document.query('#browsers'); |
37 expect(list is DataListElement); | 40 expect(list, isDataListElement); |
38 }); | 41 }); |
39 | 42 |
40 test('list', () { | 43 test('list', () { |
41 var list = document.query('#browsers'); | 44 var list = document.query('#browsers'); |
42 var input = document.query('#input'); | 45 var input = document.query('#input'); |
43 expect(input.list, list); | 46 expect(input.list, list); |
44 }); | 47 }); |
45 | 48 |
46 test('options', () { | 49 test('options', () { |
47 var options = document.query('#browsers') | 50 var options = document.query('#browsers') |
48 .queryAll('option'); // Uses DataListElement. | 51 .queryAll('option'); // Uses DataListElement. |
49 expect(options.length, 5); | 52 expect(options.length, 5); |
50 }); | 53 }); |
51 | 54 |
52 test('create', () { | 55 test('create', () { |
53 var list = new DataListElement(); | 56 var list = new DataListElement(); |
54 expect(list is DataListElement); | 57 expect(list, isDataListElement); |
55 }); | 58 }); |
56 } | 59 } |
OLD | NEW |