Upstream version 5.34.98.0
[platform/framework/web/crosswalk.git] / src / third_party / trace-viewer / src / ui / list_view_test.js
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 'use strict';
6
7 base.require('ui.list_view');
8
9 base.unittest.testSuite('ui.list_view', function() {
10   var ListView = ui.ListView;
11
12   test('instantiate', function() {
13     var view = new ListView();
14     var i1 = view.addItem('item 1');
15     var i2 = view.addItem('item 2');
16     var i3 = view.addItem('item 3');
17     this.addHTMLOutput(view);
18   });
19
20   test('programmaticSelection', function() {
21     var view = new ListView();
22     var i1 = view.addItem('item 1');
23     var i2 = view.addItem('item 2');
24     var i3 = view.addItem('item 3');
25
26     i2.selected = true;
27     assertTrue(i2.hasAttribute('selected'));
28     i3.selected = true;
29     assertFalse(i2.hasAttribute('selected'));
30     assertTrue(i3.hasAttribute('selected'));
31   });
32
33   test('selectionEvents', function() {
34     var view = new ListView();
35     var didSelectionChange = 0;
36     view.addEventListener('selection-changed', function() {
37       didSelectionChange = true;
38     });
39     var i1 = view.addItem('item 1');
40     var i2 = view.addItem('item 2');
41     var i3 = view.addItem('item 3');
42
43     didSelectionChange = false;
44     i2.selected = true;
45     assertTrue(didSelectionChange);
46
47     didSelectionChange = false;
48     view.removeChild(i2);
49     assertTrue(didSelectionChange);
50   });
51 });