Index: chromeos/network/network_connection_handler_unittest.cc |
diff --git a/chromeos/network/network_connection_handler_unittest.cc b/chromeos/network/network_connection_handler_unittest.cc |
index 1ae00afb9d46bf46d6dfd2c1e0c1cafb9a21edca..0c613bed8b57c7dabbae45138c3b1bd6c2c7e54d 100644 |
--- a/chromeos/network/network_connection_handler_unittest.cc |
+++ b/chromeos/network/network_connection_handler_unittest.cc |
@@ -333,6 +333,11 @@ const char* kConfigRequiresPassphrase = |
"{ \"GUID\": \"wifi3\", \"Type\": \"wifi\", " |
" \"PassphraseRequired\": true }"; |
+const char* kPolicyWifi0 = |
+ "[{ \"GUID\": \"wifi0\", \"IPAddressConfigType\": \"DHCP\", " |
+ " \"Type\": \"WiFi\", \"Name\": \"My WiFi Network\"," |
+ " \"WiFi\": { \"SSID\": \"wifi0\"}}]"; |
+ |
} // namespace |
TEST_F(NetworkConnectionHandlerTest, NetworkConnectionHandlerConnectSuccess) { |
@@ -346,6 +351,23 @@ TEST_F(NetworkConnectionHandlerTest, NetworkConnectionHandlerConnectSuccess) { |
EXPECT_EQ(kSuccessResult, network_connection_observer_->GetResult(kWifi0)); |
} |
+TEST_F(NetworkConnectionHandlerTest, |
+ NetworkConnectionHandlerConnectProhibited) { |
+ EXPECT_TRUE(Configure(kConfigConnectable)); |
+ base::DictionaryValue global_config; |
+ global_config.SetBooleanWithoutPathExpansion( |
+ ::onc::global_network_config::kAllowOnlyPolicyNetworksToConnect, true); |
+ SetupPolicy("[]", global_config, false /* load as device policy */); |
+ LoginToRegularUser(); |
+ Connect(kWifi0); |
+ EXPECT_EQ(NetworkConnectionHandler::kErrorUnmanagedNetwork, |
+ GetResultAndReset()); |
+ |
+ SetupPolicy(kPolicyWifi0, global_config, false /* load as device policy */); |
+ Connect(kWifi0); |
+ EXPECT_EQ(kSuccessResult, GetResultAndReset()); |
+} |
+ |
// Handles basic failure cases. |
TEST_F(NetworkConnectionHandlerTest, NetworkConnectionHandlerConnectFailure) { |
Connect(kNoNetwork); |