Upstream version 5.34.98.0
[platform/framework/web/crosswalk.git] / src / third_party / trace-viewer / src / ui / info_bar_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.info_bar');
8
9 base.unittest.testSuite('ui.info_bar', function() {
10   test('instantiate', function() {
11     var infoBar = new ui.InfoBar();
12     infoBar.message = 'This is an info';
13     infoBar.visible = true;
14     this.addHTMLOutput(infoBar);
15   });
16
17   test('buttons', function() {
18     var infoBar = new ui.InfoBar();
19     infoBar.visible = true;
20     infoBar.message = 'This is an info bar with buttons';
21     var didClick = false;
22     var button = infoBar.addButton('More info...', function() {
23       didClick = true;
24     });
25     button.click();
26     assertTrue(didClick);
27     this.addHTMLOutput(infoBar);
28   });
29
30   test('group-instantiate', function() {
31     var infoBarGroup = new ui.InfoBarGroup();
32     infoBarGroup.addMessage(
33         'Message 1',
34         [{buttonText: 'ok', onClick: function() {}}]);
35     infoBarGroup.addMessage(
36         'Message 2',
37         [{buttonText: 'button 2', onClick: function() {}}]);
38     this.addHTMLOutput(infoBarGroup);
39   });
40
41   test('group-populate-then-clear', function() {
42     var infoBarGroup = new ui.InfoBarGroup();
43     infoBarGroup.addMessage(
44         'Message 1',
45         [{buttonText: 'ok', onClick: function() {}}]);
46     infoBarGroup.addMessage(
47         'Message 2',
48         [{buttonText: 'button 2', onClick: function() {}}]);
49     infoBarGroup.clearMessages();
50     assertEquals(0, infoBarGroup.children.length);
51   });
52
53   test('group-populate-clear-repopulate', function() {
54     var infoBarGroup = new ui.InfoBarGroup();
55     infoBarGroup.addMessage(
56         'Message 1',
57         [{buttonText: 'ok', onClick: function() {}}]);
58     infoBarGroup.addMessage(
59         'Message 2',
60         [{buttonText: 'button 2', onClick: function() {}}]);
61     infoBarGroup.clearMessages();
62     infoBarGroup.addMessage(
63         'Message 1',
64         [{buttonText: 'ok', onClick: function() {}}]);
65     this.addHTMLOutput(infoBarGroup);
66   });
67 });