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

Side by Side Diff: chrome/test/data/webui/settings/internet_page_tests.js

Issue 2913323003: Settings: Network: Merge Tether networks into Mobile subpage (Closed)
Patch Set: Feedback + additional tests Created 3 years, 6 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 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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('Internet', function() { 5 suite('Internet', function() {
6 /** @type {InternetPageElement} */ 6 /** @type {InternetPageElement} */
7 var internetPage = null; 7 var internetPage = null;
8 8
9 /** @type {NetworkSummaryElement} */ 9 /** @type {NetworkSummaryElement} */
10 var networkSummary_ = null; 10 var networkSummary_ = null;
(...skipping 10 matching lines...) Expand all
21 internetAddThirdPartyVPN: 'internetAddThirdPartyVPN', 21 internetAddThirdPartyVPN: 'internetAddThirdPartyVPN',
22 internetAddVPN: 'internetAddVPN', 22 internetAddVPN: 'internetAddVPN',
23 internetAddWiFi: 'internetAddWiFi', 23 internetAddWiFi: 'internetAddWiFi',
24 internetDetailPageTitle: 'internetDetailPageTitle', 24 internetDetailPageTitle: 'internetDetailPageTitle',
25 internetKnownNetworksPageTitle: 'internetKnownNetworksPageTitle', 25 internetKnownNetworksPageTitle: 'internetKnownNetworksPageTitle',
26 }); 26 });
27 27
28 CrOncStrings = { 28 CrOncStrings = {
29 OncTypeCellular: 'OncTypeCellular', 29 OncTypeCellular: 'OncTypeCellular',
30 OncTypeEthernet: 'OncTypeEthernet', 30 OncTypeEthernet: 'OncTypeEthernet',
31 OncTypeTether: 'OncTypeTether',
31 OncTypeVPN: 'OncTypeVPN', 32 OncTypeVPN: 'OncTypeVPN',
32 OncTypeWiFi: 'OncTypeWiFi', 33 OncTypeWiFi: 'OncTypeWiFi',
33 OncTypeWiMAX: 'OncTypeWiMAX', 34 OncTypeWiMAX: 'OncTypeWiMAX',
34 networkListItemConnected: 'networkListItemConnected', 35 networkListItemConnected: 'networkListItemConnected',
35 networkListItemConnecting: 'networkListItemConnecting', 36 networkListItemConnecting: 'networkListItemConnecting',
36 networkListItemConnectingTo: 'networkListItemConnectingTo', 37 networkListItemConnectingTo: 'networkListItemConnectingTo',
37 networkListItemNotConnected: 'networkListItemNotConnected', 38 networkListItemNotConnected: 'networkListItemNotConnected',
38 vpnNameTemplate: 'vpnNameTemplate', 39 vpnNameTemplate: 'vpnNameTemplate',
39 }; 40 };
40 41
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 api_.disableNetworkType('WiFi'); 90 api_.disableNetworkType('WiFi');
90 Polymer.dom.flush(); 91 Polymer.dom.flush();
91 var wifi = networkSummary_.$$('#WiFi'); 92 var wifi = networkSummary_.$$('#WiFi');
92 assertTrue(!!wifi); 93 assertTrue(!!wifi);
93 94
94 // Ensure that the initial state is disabled and the toggle is 95 // Ensure that the initial state is disabled and the toggle is
95 // enabled but unchecked. 96 // enabled but unchecked.
96 assertEquals('Disabled', api_.getDeviceStateForTest('WiFi').State); 97 assertEquals('Disabled', api_.getDeviceStateForTest('WiFi').State);
97 var toggle = wifi.$$('#deviceEnabledButton'); 98 var toggle = wifi.$$('#deviceEnabledButton');
98 assertTrue(!!toggle); 99 assertTrue(!!toggle);
99 assertTrue(toggle.enabled); 100 assertFalse(toggle.disabled);
100 assertFalse(toggle.checked); 101 assertFalse(toggle.checked);
101 102
102 // Tap the enable toggle button and ensure the state becomes enabled. 103 // Tap the enable toggle button and ensure the state becomes enabled.
103 MockInteractions.tap(toggle); 104 MockInteractions.tap(toggle);
104 Polymer.dom.flush(); 105 Polymer.dom.flush();
105 assertTrue(toggle.checked); 106 assertTrue(toggle.checked);
106 assertEquals('Enabled', api_.getDeviceStateForTest('WiFi').State); 107 assertEquals('Enabled', api_.getDeviceStateForTest('WiFi').State);
107 }); 108 });
108 }); 109 });
109 110
110 suite('SubPage', function() { 111 suite('SubPage', function() {
111 test('WiFi', function() { 112 test('WiFi', function() {
112 api_.addNetworksForTest([ 113 api_.addNetworksForTest([
113 {GUID: 'wifi1_guid', Name: 'wifi1', Type: 'WiFi'}, 114 {GUID: 'wifi1_guid', Name: 'wifi1', Type: 'WiFi'},
114 {GUID: 'wifi12_guid', Name: 'wifi2', Type: 'WiFi'}, 115 {GUID: 'wifi12_guid', Name: 'wifi2', Type: 'WiFi'},
115 ]); 116 ]);
116 api_.enableNetworkType('WiFi'); 117 api_.enableNetworkType('WiFi');
117 Polymer.dom.flush(); 118 Polymer.dom.flush();
118 var wifi = networkSummary_.$$('#WiFi'); 119 var wifi = networkSummary_.$$('#WiFi');
119 assertTrue(!!wifi); 120 assertTrue(!!wifi);
120 MockInteractions.tap(wifi.$$('button.subpage-arrow')); 121 MockInteractions.tap(wifi.$$('button.subpage-arrow'));
121 Polymer.dom.flush(); 122 Polymer.dom.flush();
122 var subpage = internetPage.$$('settings-internet-subpage'); 123 // Allow dom-if templates to resolve.
123 assertTrue(!!subpage); 124 Polymer.Base.async(function() {
124 assertEquals(2, subpage.networkStateList_.length); 125 var subpage = internetPage.$$('settings-internet-subpage');
125 var networkList = subpage.$$('#networkList'); 126 assertTrue(!!subpage);
126 assertTrue(!!networkList); 127 assertEquals(2, subpage.networkStateList_.length);
127 assertEquals(2, networkList.networks.length); 128 var toggle = wifi.$$('#deviceEnabledButton');
129 assertTrue(!!toggle);
130 assertFalse(toggle.disabled);
131 var networkList = subpage.$$('#networkList');
132 assertTrue(!!networkList);
133 assertEquals(2, networkList.networks.length);
134 });});
135
136 test('Cellular', function() {
137 api_.addNetworksForTest([
138 {GUID: 'cellular1_guid', Name: 'cellular1', Type: 'Cellular'},
139 ]);
140 api_.enableNetworkType('Cellular');
141 Polymer.dom.flush();
142 // Allow dom-if templates to resolve.
143 Polymer.Base.async(function() {
144 var mobile = networkSummary_.$$('#Cellular');
145 assertTrue(!!mobile);
146 MockInteractions.tap(mobile.$$('button.subpage-arrow'));
147 Polymer.dom.flush();
148 var subpage = internetPage.$$('settings-internet-subpage');
149 // No subpage when there is only one Cellular network.
150 assertFalse(!!subpage);
151 });
152 });
153
154 test('Tether', function() {
155 api_.addNetworksForTest([
156 {GUID: 'tether1_guid', Name: 'tether1', Type: 'Tether'},
157 {GUID: 'tether2_guid', Name: 'tether2', Type: 'Tether'},
158 ]);
159 api_.enableNetworkType('Tether');
160 Polymer.dom.flush();
161 // Allow dom-if templates to resolve.
162 Polymer.Base.async(function() {
163 var mobile = networkSummary_.$$('#Tether');
164 assertTrue(!!mobile);
165 MockInteractions.tap(mobile.$$('button.subpage-arrow'));
166 Polymer.dom.flush();
167 var subpage = internetPage.$$('settings-internet-subpage');
168 assertTrue(!!subpage);
169 assertEquals(3, subpage.networkStateList_.length);
170 var toggle = mobile.$$('#deviceEnabledButton');
171 assertTrue(!!toggle);
172 assertFalse(toggle.disabled);
173 var networkList = subpage.$$('#networkList');
174 assertTrue(!!networkList);
175 assertEquals(3, networkList.networks.length);
176 var tetherToggle = mobile.$$('#tetherEnabledButton');
177 // No separate tether toggle when Celular is not available; the
178 // primary toggle enables or disables Tether in that case.
179 assertFalse(!!tetherToggle);
180 });
181 });
182
183 test('Tether plus Cellular', function() {
184 api_.addNetworksForTest([
185 {GUID: 'cellular1_guid', Name: 'cellular1', Type: 'Cellular'},
186 {GUID: 'tether1_guid', Name: 'tether1', Type: 'Tether'},
187 {GUID: 'tether2_guid', Name: 'tether2', Type: 'Tether'},
188 ]);
189 api_.enableNetworkType('Cellular');
190 api_.enableNetworkType('Tether');
191 Polymer.dom.flush();
192 // Allow dom-if templates to resolve.
193 Polymer.Base.async(function() {
194 var mobile = networkSummary_.$$('#Cellular');
195 assertTrue(!!mobile);
196 MockInteractions.tap(mobile.$$('button.subpage-arrow'));
197 Polymer.dom.flush();
198 var subpage = internetPage.$$('settings-internet-subpage');
199 assertTrue(!!subpage);
200 assertEquals(3, subpage.networkStateList_.length);
201 var toggle = mobile.$$('#deviceEnabledButton');
202 assertTrue(!!toggle);
203 assertFalse(toggle.disabled);
204 var networkList = subpage.$$('#networkList');
205 assertTrue(!!networkList);
206 assertEquals(3, networkList.networks.length);
207 var tetherToggle = mobile.$$('#tetherEnabledButton');
208 assertTrue(!!tetherToggle);
209 assertTrue(tetherToggle.enabled);
210 });
128 }); 211 });
129 212
130 test('VPN', function() { 213 test('VPN', function() {
131 api_.addNetworksForTest([ 214 api_.addNetworksForTest([
132 {GUID: 'vpn1_guid', Name: 'vpn1', Type: 'VPN'}, 215 {GUID: 'vpn1_guid', Name: 'vpn1', Type: 'VPN'},
133 {GUID: 'vpn2_guid', Name: 'vpn1', Type: 'VPN'}, 216 {GUID: 'vpn2_guid', Name: 'vpn1', Type: 'VPN'},
134 { 217 {
135 GUID: 'third_party1_vpn1_guid', 218 GUID: 'third_party1_vpn1_guid',
136 Name: 'vpn3', 219 Name: 'vpn3',
137 Type: 'VPN', 220 Type: 'VPN',
(...skipping 16 matching lines...) Expand all
154 Name: 'vpn5', 237 Name: 'vpn5',
155 Type: 'VPN', 238 Type: 'VPN',
156 VPN: { 239 VPN: {
157 Type: 'ThirdPartyVPN', 240 Type: 'ThirdPartyVPN',
158 ThirdPartyVPN: {ExtensionID: 'id2', ProviderName: 'pname2'} 241 ThirdPartyVPN: {ExtensionID: 'id2', ProviderName: 'pname2'}
159 } 242 }
160 }, 243 },
161 ]); 244 ]);
162 api_.onNetworkListChanged.callListeners(); 245 api_.onNetworkListChanged.callListeners();
163 Polymer.dom.flush(); 246 Polymer.dom.flush();
164 var vpn = networkSummary_.$$('#VPN'); 247 // Allow dom-if templates to resolve.
165 assertTrue(!!vpn); 248 Polymer.Base.async(function() {
166 MockInteractions.tap(vpn.$$('button.subpage-arrow')); 249 var vpn = networkSummary_.$$('#VPN');
167 Polymer.dom.flush(); 250 assertTrue(!!vpn);
168 var subpage = internetPage.$$('settings-internet-subpage'); 251 MockInteractions.tap(vpn.$$('button.subpage-arrow'));
169 assertTrue(!!subpage); 252 Polymer.dom.flush();
170 assertEquals(2, subpage.networkStateList_.length); 253 var subpage = internetPage.$$('settings-internet-subpage');
171 var networkList = subpage.$$('#networkList'); 254 assertTrue(!!subpage);
172 assertTrue(!!networkList); 255 assertEquals(2, subpage.networkStateList_.length);
173 assertEquals(2, networkList.networks.length); 256 var networkList = subpage.$$('#networkList');
174 // TODO(stevenjb): Implement fake management API and test third 257 assertTrue(!!networkList);
175 // party provider sections. 258 assertEquals(2, networkList.networks.length);
259 // TODO(stevenjb): Implement fake management API and test third
260 // party provider sections.
261 });
176 }); 262 });
177 }); 263 });
178 }); 264 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698