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/settings/route_tests.js

Issue 2184893002: Settings Router Refactor: Remove route.page legacy property. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@0217-settings-refactor-settings-menu
Patch Set: fix contains issue. Created 4 years, 4 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('route', function() { 5 suite('route', function() {
6 test('tree structure', function() { 6 test('tree structure', function() {
7 // Set up root page routes. 7 // Set up root page routes.
8 var BASIC = new settings.Route('/'); 8 var BASIC = new settings.Route('/');
9 BASIC.page = 'basic';
10 var ADVANCED = new settings.Route('/advanced'); 9 var ADVANCED = new settings.Route('/advanced');
11 ADVANCED.page = 'advanced';
12 assertDeepEquals([], ADVANCED.subpage); 10 assertDeepEquals([], ADVANCED.subpage);
13 11
14 // Test a section route. 12 // Test a section route.
15 var PRIVACY = ADVANCED.createChild('/privacy'); 13 var PRIVACY = ADVANCED.createChild('/privacy');
16 PRIVACY.section = 'privacy'; 14 PRIVACY.section = 'privacy';
17 assertEquals(ADVANCED, PRIVACY.parent); 15 assertEquals(ADVANCED, PRIVACY.parent);
18 assertEquals('advanced', PRIVACY.page);
19 assertDeepEquals([], PRIVACY.subpage); 16 assertDeepEquals([], PRIVACY.subpage);
20 assertFalse(PRIVACY.isDescendantOf(BASIC)); 17 assertFalse(BASIC.contains(PRIVACY));
21 assertTrue(PRIVACY.isDescendantOf(ADVANCED)); 18 assertTrue(ADVANCED.contains(PRIVACY));
22 assertFalse(PRIVACY.isDescendantOf(PRIVACY)); 19 assertTrue(PRIVACY.contains(PRIVACY));
23 assertFalse(ADVANCED.isDescendantOf(PRIVACY)); 20 assertFalse(PRIVACY.contains(ADVANCED));
24 21
25 // Test a subpage route. 22 // Test a subpage route.
26 var SITE_SETTINGS = PRIVACY.createChild('/siteSettings', 'site-settings'); 23 var SITE_SETTINGS = PRIVACY.createChild('/siteSettings', 'site-settings');
27 assertEquals('/siteSettings', SITE_SETTINGS.path); 24 assertEquals('/siteSettings', SITE_SETTINGS.path);
28 assertEquals(PRIVACY, SITE_SETTINGS.parent); 25 assertEquals(PRIVACY, SITE_SETTINGS.parent);
29 assertFalse(!!SITE_SETTINGS.dialog); 26 assertFalse(!!SITE_SETTINGS.dialog);
30 assertDeepEquals(['site-settings'], SITE_SETTINGS.subpage); 27 assertDeepEquals(['site-settings'], SITE_SETTINGS.subpage);
31 assertEquals('advanced', SITE_SETTINGS.page);
32 assertEquals('privacy', SITE_SETTINGS.section); 28 assertEquals('privacy', SITE_SETTINGS.section);
33 assertFalse(SITE_SETTINGS.isDescendantOf(BASIC)); 29 assertFalse(BASIC.contains(SITE_SETTINGS));
34 assertTrue(SITE_SETTINGS.isDescendantOf(ADVANCED)); 30 assertTrue(ADVANCED.contains(SITE_SETTINGS));
35 assertTrue(SITE_SETTINGS.isDescendantOf(PRIVACY)); 31 assertTrue(PRIVACY.contains(SITE_SETTINGS));
36 32
37 // Test a sub-subpage route. 33 // Test a sub-subpage route.
38 var SITE_SETTINGS_ALL = 34 var SITE_SETTINGS_ALL =
39 SITE_SETTINGS.createChild('all', 'all-sites'); 35 SITE_SETTINGS.createChild('all', 'all-sites');
40 assertEquals('/siteSettings/all', SITE_SETTINGS_ALL.path); 36 assertEquals('/siteSettings/all', SITE_SETTINGS_ALL.path);
41 assertEquals(SITE_SETTINGS, SITE_SETTINGS_ALL.parent); 37 assertEquals(SITE_SETTINGS, SITE_SETTINGS_ALL.parent);
42 assertDeepEquals(['site-settings', 'all-sites'], SITE_SETTINGS_ALL.subpage); 38 assertDeepEquals(['site-settings', 'all-sites'], SITE_SETTINGS_ALL.subpage);
43 39
44 // Test a dialog route. 40 // Test a dialog route.
45 var CLEAR_BROWSING_DATA = 41 var CLEAR_BROWSING_DATA =
46 PRIVACY.createDialog('/clearBrowsingData', 'clear-browsing-data'); 42 PRIVACY.createDialog('/clearBrowsingData', 'clear-browsing-data');
47 assertEquals(PRIVACY, CLEAR_BROWSING_DATA.parent); 43 assertEquals(PRIVACY, CLEAR_BROWSING_DATA.parent);
48 assertEquals('clear-browsing-data', CLEAR_BROWSING_DATA.dialog); 44 assertEquals('clear-browsing-data', CLEAR_BROWSING_DATA.dialog);
49 assertEquals('privacy', CLEAR_BROWSING_DATA.section); 45 assertEquals('privacy', CLEAR_BROWSING_DATA.section);
50 assertEquals('advanced', CLEAR_BROWSING_DATA.page); 46 assertFalse(BASIC.contains(CLEAR_BROWSING_DATA));
51 assertEquals('privacy', CLEAR_BROWSING_DATA.section); 47 assertTrue(ADVANCED.contains(CLEAR_BROWSING_DATA));
52 assertFalse(CLEAR_BROWSING_DATA.isDescendantOf(BASIC)); 48 assertTrue(PRIVACY.contains(CLEAR_BROWSING_DATA));
53 assertTrue(CLEAR_BROWSING_DATA.isDescendantOf(ADVANCED));
54 assertTrue(CLEAR_BROWSING_DATA.isDescendantOf(PRIVACY));
55 }); 49 });
56 50
57 test('no duplicate routes', function() { 51 test('no duplicate routes', function() {
58 var paths = new Set(); 52 var paths = new Set();
59 Object.values(settings.Route).forEach(function(route) { 53 Object.values(settings.Route).forEach(function(route) {
60 assertFalse(paths.has(route.path), route.path); 54 assertFalse(paths.has(route.path), route.path);
61 paths.add(route.path); 55 paths.add(route.path);
62 }); 56 });
63 }); 57 });
64 }); 58 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698