Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 27 matching lines...) Expand all Loading... | |
| 38 networkListItemNotConnected: 'networkListItemNotConnected', | 38 networkListItemNotConnected: 'networkListItemNotConnected', |
| 39 vpnNameTemplate: 'vpnNameTemplate', | 39 vpnNameTemplate: 'vpnNameTemplate', |
| 40 }; | 40 }; |
| 41 | 41 |
| 42 networkingPrivateApi_ = new settings.FakeNetworkingPrivate(); | 42 networkingPrivateApi_ = new settings.FakeNetworkingPrivate(); |
| 43 | 43 |
| 44 // Disable animations so sub-pages open within one event loop. | 44 // Disable animations so sub-pages open within one event loop. |
| 45 testing.Test.disableAnimationsAndTransitions(); | 45 testing.Test.disableAnimationsAndTransitions(); |
| 46 }); | 46 }); |
| 47 | 47 |
| 48 setup(function() { | |
| 49 PolymerTest.clearBody(); | |
| 50 internetPage = document.createElement('settings-internet-page'); | |
| 51 assertTrue(!!internetPage); | |
| 52 networkingPrivateApi_.resetForTest(); | |
| 53 internetPage.networkingPrivate = networkingPrivateApi_; | |
| 54 document.body.appendChild(internetPage); | |
| 55 networkSummary_ = internetPage.$$('network-summary'); | |
| 56 assertTrue(!!networkSummary_); | |
| 57 Polymer.dom.flush(); | |
| 58 }); | |
| 59 | |
| 60 teardown(function() { | |
| 61 internetPage.remove(); | |
| 62 }); | |
| 63 | |
| 48 suite('MainPage', function() { | 64 suite('MainPage', function() { |
| 49 setup(function() { | |
| 50 PolymerTest.clearBody(); | |
| 51 internetPage = document.createElement('settings-internet-page'); | |
| 52 assertTrue(!!internetPage); | |
| 53 networkingPrivateApi_.resetForTest(); | |
| 54 internetPage.networkingPrivate = networkingPrivateApi_; | |
| 55 document.body.appendChild(internetPage); | |
| 56 networkSummary_ = internetPage.$$('network-summary'); | |
| 57 assertTrue(!!networkSummary_); | |
| 58 Polymer.dom.flush(); | |
| 59 }); | |
| 60 | |
| 61 teardown(function() { | |
| 62 internetPage.remove(); | |
| 63 }); | |
| 64 | |
| 65 test('Ethernet', function() { | 65 test('Ethernet', function() { |
| 66 // Default fake device state is Ethernet enabled only. | 66 // Default fake device state is Ethernet enabled only. |
| 67 var ethernet = networkSummary_.$$('#Ethernet'); | 67 var ethernet = networkSummary_.$$('#Ethernet'); |
| 68 assertTrue(!!ethernet); | 68 assertTrue(!!ethernet); |
| 69 assertEquals(1, ethernet.networkStateList.length); | 69 assertEquals(1, ethernet.networkStateList.length); |
| 70 assertEquals(null, networkSummary_.$$('#Cellular')); | 70 assertEquals(null, networkSummary_.$$('#Cellular')); |
| 71 assertEquals(null, networkSummary_.$$('#VPN')); | 71 assertEquals(null, networkSummary_.$$('#VPN')); |
| 72 assertEquals(null, networkSummary_.$$('#WiMAX')); | 72 assertEquals(null, networkSummary_.$$('#WiMAX')); |
| 73 assertEquals(null, networkSummary_.$$('#WiFi')); | 73 assertEquals(null, networkSummary_.$$('#WiFi')); |
| 74 }); | 74 }); |
| (...skipping 27 matching lines...) Expand all Loading... | |
| 102 assertTrue(toggle.enabled); | 102 assertTrue(toggle.enabled); |
| 103 assertFalse(toggle.checked); | 103 assertFalse(toggle.checked); |
| 104 | 104 |
| 105 // Tap the enable toggle button and ensure the state becomes enabled. | 105 // Tap the enable toggle button and ensure the state becomes enabled. |
| 106 MockInteractions.tap(toggle); | 106 MockInteractions.tap(toggle); |
| 107 Polymer.dom.flush(); | 107 Polymer.dom.flush(); |
| 108 assertTrue(toggle.checked); | 108 assertTrue(toggle.checked); |
| 109 assertEquals('Enabled', api.getDeviceStateForTest('WiFi').State); | 109 assertEquals('Enabled', api.getDeviceStateForTest('WiFi').State); |
| 110 }); | 110 }); |
| 111 }); | 111 }); |
| 112 | |
| 113 suite('SubPage', function() { | |
| 114 test('WiFi', function() { | |
| 115 var api = networkingPrivateApi_; | |
|
michaelpg
2017/03/01 23:27:59
is this just to have a shortcut? networkingPrivate
stevenjb
2017/03/02 00:25:17
Yeah but it's long and makes the second usage ugly
| |
| 116 | |
| 117 api.addNetworksForTest([ | |
| 118 {GUID: 'wifi1_guid', Name: 'wifi1', Type: 'WiFi'}, | |
| 119 {GUID: 'wifi12_guid', Name: 'wifi2', Type: 'WiFi'}, | |
| 120 ]); | |
| 121 api.enableNetworkType('WiFi'); | |
| 122 Polymer.dom.flush(); | |
| 123 var wifi = networkSummary_.$$('#WiFi'); | |
| 124 assertTrue(!!wifi); | |
| 125 MockInteractions.tap(wifi.$$('button.subpage-arrow')); | |
| 126 var subpage = internetPage.$$('settings-internet-subpage'); | |
| 127 assertTrue(!!subpage); | |
| 128 assertEquals(2, subpage.networkStateList_.length); | |
| 129 var networkList = subpage.$$('#networkList'); | |
| 130 assertTrue(!!networkList); | |
| 131 assertEquals(2, networkList.networks.length); | |
| 132 }); | |
| 133 | |
| 134 test('VPN', function() { | |
| 135 networkingPrivateApi_.addNetworksForTest([ | |
| 136 {GUID: 'vpn1_guid', Name: 'vpn1', Type: 'VPN'}, | |
| 137 {GUID: 'vpn2_guid', Name: 'vpn1', Type: 'VPN'}, | |
| 138 { | |
| 139 GUID: 'third_party1_vpn1_guid', | |
| 140 Name: 'vpn3', | |
| 141 Type: 'VPN', | |
| 142 VPN: { | |
| 143 Type: 'ThirdPartyVPN', | |
| 144 ThirdPartyVPN: {ExtensionID: 'id1', ProviderName: 'pname1'} | |
| 145 } | |
| 146 }, | |
| 147 { | |
| 148 GUID: 'third_party1_vpn2_guid', | |
| 149 Name: 'vpn4', | |
| 150 Type: 'VPN', | |
| 151 VPN: { | |
| 152 Type: 'ThirdPartyVPN', | |
| 153 ThirdPartyVPN: {ExtensionID: 'id1', ProviderName: 'pname1'} | |
| 154 } | |
| 155 }, | |
| 156 { | |
| 157 GUID: 'third_party2_vpn1_guid', | |
| 158 Name: 'vpn5', | |
| 159 Type: 'VPN', | |
| 160 VPN: { | |
| 161 Type: 'ThirdPartyVPN', | |
| 162 ThirdPartyVPN: {ExtensionID: 'id2', ProviderName: 'pname2'} | |
| 163 } | |
| 164 }, | |
| 165 ]); | |
| 166 networkingPrivateApi_.onNetworkListChanged.callListeners(); | |
| 167 Polymer.dom.flush(); | |
| 168 var vpn = networkSummary_.$$('#VPN'); | |
| 169 assertTrue(!!vpn); | |
| 170 MockInteractions.tap(vpn.$$('button.subpage-arrow')); | |
| 171 var subpage = internetPage.$$('settings-internet-subpage'); | |
| 172 assertTrue(!!subpage); | |
| 173 assertEquals(2, subpage.networkStateList_.length); | |
| 174 var networkList = subpage.$$('#networkList'); | |
| 175 assertTrue(!!networkList); | |
| 176 assertEquals(2, networkList.networks.length); | |
| 177 // TODO(stevenjb): Implement fake management API and test third | |
| 178 // party provider sections. | |
| 179 }); | |
| 180 }); | |
| 112 }); | 181 }); |
| OLD | NEW |