OLD | NEW |
---|---|
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 #include "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "chrome/browser/browser_process.h" | 6 #include "chrome/browser/browser_process.h" |
7 #include "chrome/browser/chromeos/login/user.h" | 7 #include "chrome/browser/chromeos/login/user.h" |
8 #include "chrome/browser/chromeos/login/user_manager.h" | 8 #include "chrome/browser/chromeos/login/user_manager.h" |
9 #include "chrome/browser/chromeos/policy/network_configuration_updater.h" | 9 #include "chrome/browser/chromeos/policy/network_configuration_updater.h" |
10 #include "chrome/browser/extensions/extension_apitest.h" | 10 #include "chrome/browser/extensions/extension_apitest.h" |
(...skipping 27 matching lines...) Expand all Loading... | |
38 | 38 |
39 void AssignString(std::string* out, | 39 void AssignString(std::string* out, |
40 DBusMethodCallStatus call_status, | 40 DBusMethodCallStatus call_status, |
41 const std::string& result) { | 41 const std::string& result) { |
42 CHECK_EQ(call_status, DBUS_METHOD_CALL_SUCCESS); | 42 CHECK_EQ(call_status, DBUS_METHOD_CALL_SUCCESS); |
43 *out = result; | 43 *out = result; |
44 } | 44 } |
45 | 45 |
46 } // namespace | 46 } // namespace |
47 | 47 |
48 class ExtensionNetworkingPrivateApiTest : public ExtensionApiTest { | 48 class ExtensionNetworkingPrivateApiTest : |
49 public ExtensionApiTest, | |
50 public testing::WithParamInterface<bool> { | |
49 public: | 51 public: |
50 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 52 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { |
51 ExtensionApiTest::SetUpCommandLine(command_line); | 53 ExtensionApiTest::SetUpCommandLine(command_line); |
52 // Whitelist the extension ID of the test extension. | 54 // Whitelist the extension ID of the test extension. |
53 command_line->AppendSwitchASCII(::switches::kWhitelistedExtensionID, | 55 command_line->AppendSwitchASCII(::switches::kWhitelistedExtensionID, |
54 "epcifkihnkjgphfkloaaleeakhpmgdmn"); | 56 "epcifkihnkjgphfkloaaleeakhpmgdmn"); |
55 command_line->AppendSwitch(switches::kUseNewNetworkConfigurationHandlers); | 57 command_line->AppendSwitch(switches::kUseNewNetworkConfigurationHandlers); |
56 | 58 |
57 // TODO(pneubeck): Remove the following hack, once the NetworkingPrivateAPI | 59 // TODO(pneubeck): Remove the following hack, once the NetworkingPrivateAPI |
58 // uses the ProfileHelper to obtain the userhash crbug/238623. | 60 // uses the ProfileHelper to obtain the userhash crbug/238623. |
59 std::string login_user = | 61 std::string login_user = |
60 command_line->GetSwitchValueNative(switches::kLoginUser); | 62 command_line->GetSwitchValueNative(switches::kLoginUser); |
61 // Do the same as CryptohomeClientStubImpl::GetSanitizedUsername | 63 // Do the same as CryptohomeClientStubImpl::GetSanitizedUsername |
62 std::string sanitized_user = login_user + kUserIdStubHashSuffix; | 64 std::string sanitized_user = login_user + kUserIdStubHashSuffix; |
63 command_line->AppendSwitchASCII(switches::kLoginProfile, sanitized_user); | 65 command_line->AppendSwitchASCII(switches::kLoginProfile, sanitized_user); |
66 if (GetParam()) { | |
67 command_line->AppendSwitch(::switches::kMultiProfiles); | |
68 } | |
zel
2013/05/21 14:06:16
nit: no {}
| |
64 } | 69 } |
65 | 70 |
66 bool RunNetworkingSubtest(const std::string& subtest) { | 71 bool RunNetworkingSubtest(const std::string& subtest) { |
67 return RunExtensionSubtest( | 72 return RunExtensionSubtest( |
68 "networking", "main.html?" + subtest, | 73 "networking", "main.html?" + subtest, |
69 kFlagEnableFileAccess | kFlagLoadAsComponent); | 74 kFlagEnableFileAccess | kFlagLoadAsComponent); |
70 } | 75 } |
71 | 76 |
72 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { | 77 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { |
73 EXPECT_CALL(provider_, IsInitializationComplete(_)) | 78 EXPECT_CALL(provider_, IsInitializationComplete(_)) |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
172 | 177 |
173 protected: | 178 protected: |
174 policy::MockConfigurationPolicyProvider provider_; | 179 policy::MockConfigurationPolicyProvider provider_; |
175 std::string userhash_; | 180 std::string userhash_; |
176 }; | 181 }; |
177 | 182 |
178 // Place each subtest into a separate browser test so that the stub networking | 183 // Place each subtest into a separate browser test so that the stub networking |
179 // library state is reset for each subtest run. This way they won't affect each | 184 // library state is reset for each subtest run. This way they won't affect each |
180 // other. | 185 // other. |
181 | 186 |
182 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, StartConnect) { | 187 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, StartConnect) { |
183 EXPECT_TRUE(RunNetworkingSubtest("startConnect")) << message_; | 188 EXPECT_TRUE(RunNetworkingSubtest("startConnect")) << message_; |
184 } | 189 } |
185 | 190 |
186 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, StartDisconnect) { | 191 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, StartDisconnect) { |
187 EXPECT_TRUE(RunNetworkingSubtest("startDisconnect")) << message_; | 192 EXPECT_TRUE(RunNetworkingSubtest("startDisconnect")) << message_; |
188 } | 193 } |
189 | 194 |
190 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 195 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
191 StartConnectNonexistent) { | 196 StartConnectNonexistent) { |
192 EXPECT_TRUE(RunNetworkingSubtest("startConnectNonexistent")) << message_; | 197 EXPECT_TRUE(RunNetworkingSubtest("startConnectNonexistent")) << message_; |
193 } | 198 } |
194 | 199 |
195 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 200 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
196 StartDisconnectNonexistent) { | 201 StartDisconnectNonexistent) { |
197 EXPECT_TRUE(RunNetworkingSubtest("startDisconnectNonexistent")) << message_; | 202 EXPECT_TRUE(RunNetworkingSubtest("startDisconnectNonexistent")) << message_; |
198 } | 203 } |
199 | 204 |
200 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 205 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
201 StartGetPropertiesNonexistent) { | 206 StartGetPropertiesNonexistent) { |
202 EXPECT_TRUE(RunNetworkingSubtest("startGetPropertiesNonexistent")) | 207 EXPECT_TRUE(RunNetworkingSubtest("startGetPropertiesNonexistent")) |
203 << message_; | 208 << message_; |
204 } | 209 } |
205 | 210 |
206 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, GetVisibleNetworks) { | 211 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, GetVisibleNetworks) { |
207 EXPECT_TRUE(RunNetworkingSubtest("getVisibleNetworks")) << message_; | 212 EXPECT_TRUE(RunNetworkingSubtest("getVisibleNetworks")) << message_; |
208 } | 213 } |
209 | 214 |
210 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 215 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
211 GetVisibleNetworksWifi) { | 216 GetVisibleNetworksWifi) { |
212 EXPECT_TRUE(RunNetworkingSubtest("getVisibleNetworksWifi")) << message_; | 217 EXPECT_TRUE(RunNetworkingSubtest("getVisibleNetworksWifi")) << message_; |
213 } | 218 } |
214 | 219 |
215 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, RequestNetworkScan) { | 220 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, RequestNetworkScan) { |
216 EXPECT_TRUE(RunNetworkingSubtest("requestNetworkScan")) << message_; | 221 EXPECT_TRUE(RunNetworkingSubtest("requestNetworkScan")) << message_; |
217 } | 222 } |
218 | 223 |
219 // Properties are filtered and translated through | 224 // Properties are filtered and translated through |
220 // ShillToONCTranslator::TranslateWiFiWithState | 225 // ShillToONCTranslator::TranslateWiFiWithState |
221 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, GetProperties) { | 226 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, GetProperties) { |
222 EXPECT_TRUE(RunNetworkingSubtest("getProperties")) << message_; | 227 EXPECT_TRUE(RunNetworkingSubtest("getProperties")) << message_; |
223 } | 228 } |
224 | 229 |
225 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, GetState) { | 230 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, GetState) { |
226 EXPECT_TRUE(RunNetworkingSubtest("getState")) << message_; | 231 EXPECT_TRUE(RunNetworkingSubtest("getState")) << message_; |
227 } | 232 } |
228 | 233 |
229 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, SetProperties) { | 234 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, SetProperties) { |
230 EXPECT_TRUE(RunNetworkingSubtest("setProperties")) << message_; | 235 EXPECT_TRUE(RunNetworkingSubtest("setProperties")) << message_; |
231 } | 236 } |
232 | 237 |
233 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 238 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
234 GetManagedProperties) { | 239 GetManagedProperties) { |
235 ShillServiceClient::TestInterface* service_test = | 240 ShillServiceClient::TestInterface* service_test = |
236 DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface(); | 241 DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface(); |
237 const std::string uidata_blob = | 242 const std::string uidata_blob = |
238 "{ \"user_settings\": {" | 243 "{ \"user_settings\": {" |
239 " \"WiFi\": {" | 244 " \"WiFi\": {" |
240 " \"Passphrase\": \"FAKE_CREDENTIAL_VPaJDV9x\" }" | 245 " \"Passphrase\": \"FAKE_CREDENTIAL_VPaJDV9x\" }" |
241 " }" | 246 " }" |
242 "}"; | 247 "}"; |
243 service_test->SetServiceProperty("stub_wifi2", | 248 service_test->SetServiceProperty("stub_wifi2", |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
275 policy::POLICY_LEVEL_MANDATORY, | 280 policy::POLICY_LEVEL_MANDATORY, |
276 policy::POLICY_SCOPE_USER, | 281 policy::POLICY_SCOPE_USER, |
277 Value::CreateStringValue(user_policy_blob)); | 282 Value::CreateStringValue(user_policy_blob)); |
278 provider_.UpdateChromePolicy(policy); | 283 provider_.UpdateChromePolicy(policy); |
279 | 284 |
280 content::RunAllPendingInMessageLoop(); | 285 content::RunAllPendingInMessageLoop(); |
281 | 286 |
282 EXPECT_TRUE(RunNetworkingSubtest("getManagedProperties")) << message_; | 287 EXPECT_TRUE(RunNetworkingSubtest("getManagedProperties")) << message_; |
283 } | 288 } |
284 | 289 |
285 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 290 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
286 OnNetworksChangedEventConnect) { | 291 OnNetworksChangedEventConnect) { |
287 EXPECT_TRUE(RunNetworkingSubtest("onNetworksChangedEventConnect")) | 292 EXPECT_TRUE(RunNetworkingSubtest("onNetworksChangedEventConnect")) |
288 << message_; | 293 << message_; |
289 } | 294 } |
290 | 295 |
291 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 296 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
292 OnNetworksChangedEventDisconnect) { | 297 OnNetworksChangedEventDisconnect) { |
293 EXPECT_TRUE(RunNetworkingSubtest("onNetworksChangedEventDisconnect")) | 298 EXPECT_TRUE(RunNetworkingSubtest("onNetworksChangedEventDisconnect")) |
294 << message_; | 299 << message_; |
295 } | 300 } |
296 | 301 |
297 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 302 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
298 OnNetworkListChangedEvent) { | 303 OnNetworkListChangedEvent) { |
299 EXPECT_TRUE(RunNetworkingSubtest("onNetworkListChangedEvent")) << message_; | 304 EXPECT_TRUE(RunNetworkingSubtest("onNetworkListChangedEvent")) << message_; |
300 } | 305 } |
301 | 306 |
302 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 307 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
303 VerifyDestination) { | 308 VerifyDestination) { |
304 EXPECT_TRUE(RunNetworkingSubtest("verifyDestination")) << message_; | 309 EXPECT_TRUE(RunNetworkingSubtest("verifyDestination")) << message_; |
305 } | 310 } |
306 | 311 |
307 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 312 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
308 VerifyAndEncryptCredentials) { | 313 VerifyAndEncryptCredentials) { |
309 EXPECT_TRUE(RunNetworkingSubtest("verifyAndEncryptCredentials")) << message_; | 314 EXPECT_TRUE(RunNetworkingSubtest("verifyAndEncryptCredentials")) << message_; |
310 } | 315 } |
311 | 316 |
312 IN_PROC_BROWSER_TEST_F(ExtensionNetworkingPrivateApiTest, | 317 IN_PROC_BROWSER_TEST_P(ExtensionNetworkingPrivateApiTest, |
313 VerifyAndEncryptData) { | 318 VerifyAndEncryptData) { |
314 EXPECT_TRUE(RunNetworkingSubtest("verifyAndEncryptData")) << message_; | 319 EXPECT_TRUE(RunNetworkingSubtest("verifyAndEncryptData")) << message_; |
315 } | 320 } |
316 | 321 |
322 INSTANTIATE_TEST_CASE_P(ExtensionNetworkingPrivateApiTestInstantiation, | |
323 ExtensionNetworkingPrivateApiTest, | |
324 testing::Bool()); | |
317 | 325 |
318 } // namespace chromeos | 326 } // namespace chromeos |
OLD | NEW |