Chromium Code Reviews| 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 |