Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: chrome/test/data/webui/md_bookmarks/item_test.js

Issue 2735953002: MD Bookmarks: Integrate new data store with UI elements (Closed)
Patch Set: More tweaks Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 suite('<bookmarks-item>', function() { 5 suite('<bookmarks-item>', function() {
6 var item; 6 var item;
7 var store;
7 var TEST_ITEM = createItem('0'); 8 var TEST_ITEM = createItem('0');
8 9
9 setup(function() { 10 setup(function() {
11 store = new bookmarks.TestStore({
12 nodes: {
calamity 2017/03/09 04:58:57 Should this be wrapped in testTree?
tsergeant 2017/03/09 06:27:55 Done.
13 '0': createItem('0'),
14 '1': createFolder('1', []),
15 },
16 });
17 bookmarks.Store.instance_ = store;
18
10 item = document.createElement('bookmarks-item'); 19 item = document.createElement('bookmarks-item');
20 item.itemId = '0';
11 replaceBody(item); 21 replaceBody(item);
12 item.item = TEST_ITEM;
13 }); 22 });
14 23
15 test('changing the url changes the favicon', function() { 24 test('changing the url changes the favicon', function() {
16 var favicon = item.$.icon.style.backgroundImage; 25 var favicon = item.$.icon.style.backgroundImage;
17 item.set('item.url', 'http://www.mail.google.com'); 26 store.data.nodes['0'] = createItem('0', {url: 'https://mail.google.com'});
27 store.notifyObservers();
18 assertNotEquals(favicon, item.$.icon.style.backgroundImage); 28 assertNotEquals(favicon, item.$.icon.style.backgroundImage);
19 }); 29 });
20 30
21 test('changing isFolder_ hides/unhides the folder/icon', function() { 31 test('changing to folder hides/unhides the folder/icon', function() {
22 item.isFolder_ = true; 32 // Starts test as an item.
33 assertTrue(item.$['folder-icon'].hidden);
34 assertFalse(item.$.icon.hidden);
35
36 // Change to a folder.
37 item.itemId = '1';
38
23 assertFalse(item.$['folder-icon'].hidden); 39 assertFalse(item.$['folder-icon'].hidden);
24 assertTrue(item.$.icon.hidden); 40 assertTrue(item.$.icon.hidden);
25
26 item.isFolder_ = false;
27 assertTrue(item.$['folder-icon'].hidden);
28 assertFalse(item.$.icon.hidden);
29 });
30
31 test('pressing the buttons fires the right event', function() {
32 var counter = [0, 0, 0];
33 document.addEventListener('select-item', function(e) {
34 if (e.detail.range)
35 counter[0]++;
36 else if (e.detail.add)
37 counter[1]++;
38 else
39 counter[2]++;
40 });
41
42 customClick(item);
43 assertDeepEquals([0, 0, 1], counter);
44
45 customClick(item, {shiftKey: true});
46 assertDeepEquals([1, 0, 1], counter);
47
48 customClick(item, {ctrlKey: true});
49 assertDeepEquals([1, 1, 1], counter);
50
51 customClick(item, {shiftKey: true, ctrlKey: true});
52 assertDeepEquals([2, 1, 1], counter);
53 }); 41 });
54 }); 42 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698