OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 cr.define('md_history.history_overflow_menu_test', function() { | 5 cr.define('md_history.history_overflow_menu_test', function() { |
6 // Menu button event. | 6 // Menu button event. |
7 var MENU_EVENT = { | 7 var MENU_EVENT = { |
8 detail: { | 8 detail: { |
9 target: null | 9 target: null |
10 } | 10 } |
11 }; | 11 }; |
12 | 12 |
13 var ADDITIONAL_MENU_EVENT = { | 13 var ADDITIONAL_MENU_EVENT = { |
14 detail: { | 14 detail: { |
15 target: null | 15 target: null |
16 } | 16 } |
17 }; | 17 }; |
18 | 18 |
19 function registerTests() { | 19 function registerTests() { |
20 suite('#overflow-menu', function() { | 20 suite('#overflow-menu', function() { |
21 var element; | 21 var listContainer; |
| 22 var sharedMenu; |
22 | 23 |
23 suiteSetup(function() { | 24 suiteSetup(function() { |
24 element = $('history-app').$['history'].$['infinite-list']; | 25 listContainer = $('history-app').$['history']; |
| 26 sharedMenu = listContainer.$.sharedMenu; |
25 | 27 |
26 var element1 = document.createElement('div'); | 28 var element1 = document.createElement('div'); |
27 var element2 = document.createElement('div'); | 29 var element2 = document.createElement('div'); |
28 document.body.appendChild(element1); | 30 document.body.appendChild(element1); |
29 document.body.appendChild(element2); | 31 document.body.appendChild(element2); |
30 | 32 |
31 MENU_EVENT.detail.target = element1; | 33 MENU_EVENT.detail.target = element1; |
32 ADDITIONAL_MENU_EVENT.detail.target = element2; | 34 ADDITIONAL_MENU_EVENT.detail.target = element2; |
33 }); | 35 }); |
34 | 36 |
35 test('opening and closing menu', function() { | 37 test('opening and closing menu', function() { |
36 element.toggleMenu_(MENU_EVENT); | 38 listContainer.toggleMenu_(MENU_EVENT); |
37 assertEquals(true, element.$.sharedMenu.menuOpen); | 39 assertTrue(sharedMenu.menuOpen); |
38 assertEquals(MENU_EVENT.detail.target, | 40 assertEquals(MENU_EVENT.detail.target, sharedMenu.lastAnchor_); |
39 element.$.sharedMenu.lastAnchor_); | |
40 | 41 |
41 // Test having the same menu event (pressing the same button) closes the | 42 // Test having the same menu event (pressing the same button) closes the |
42 // overflow menu. | 43 // overflow menu. |
43 element.toggleMenu_(MENU_EVENT); | 44 listContainer.toggleMenu_(MENU_EVENT); |
44 assertEquals(false, element.$.sharedMenu.menuOpen); | 45 assertFalse(sharedMenu.menuOpen); |
45 | 46 |
46 // Test having consecutive distinct menu events moves the menu to the | 47 // Test having consecutive distinct menu events moves the menu to the |
47 // new button. | 48 // new button. |
48 element.toggleMenu_(MENU_EVENT); | 49 listContainer.toggleMenu_(MENU_EVENT); |
49 element.toggleMenu_(ADDITIONAL_MENU_EVENT); | 50 listContainer.toggleMenu_(ADDITIONAL_MENU_EVENT); |
50 assertEquals(ADDITIONAL_MENU_EVENT.detail.target, | 51 assertEquals( |
51 element.$.sharedMenu.lastAnchor_); | 52 ADDITIONAL_MENU_EVENT.detail.target, sharedMenu.lastAnchor_); |
52 assertEquals(true, element.$.sharedMenu.menuOpen); | 53 assertTrue(sharedMenu.menuOpen); |
53 element.toggleMenu_(MENU_EVENT); | 54 listContainer.toggleMenu_(MENU_EVENT); |
54 assertEquals(true, element.$.sharedMenu.menuOpen); | 55 assertTrue(sharedMenu.menuOpen); |
55 assertEquals(MENU_EVENT.detail.target, | 56 assertEquals(MENU_EVENT.detail.target, sharedMenu.lastAnchor_); |
56 element.$.sharedMenu.lastAnchor_); | |
57 | 57 |
58 element.$.sharedMenu.closeMenu(); | 58 sharedMenu.closeMenu(); |
59 assertEquals(false, element.$.sharedMenu.menuOpen); | 59 assertFalse(sharedMenu.menuOpen); |
60 assertEquals(MENU_EVENT.detail.target, | 60 assertEquals(MENU_EVENT.detail.target, sharedMenu.lastAnchor_); |
61 element.$.sharedMenu.lastAnchor_); | |
62 }); | 61 }); |
63 | 62 |
64 teardown(function() { | 63 teardown(function() { |
65 element.$.sharedMenu.lastAnchor_ = null; | 64 sharedMenu.lastAnchor_ = null; |
66 }); | 65 }); |
67 }); | 66 }); |
68 } | 67 } |
69 return { | 68 return { |
70 registerTests: registerTests | 69 registerTests: registerTests |
71 }; | 70 }; |
72 }); | 71 }); |
OLD | NEW |