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

Unified Diff: chromeos/dbus/fake_shill_manager_client.cc

Issue 948943003: Better support for Cellular roaming state in ONC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nits Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chromeos/dbus/fake_shill_manager_client.h ('k') | chromeos/network/network_util.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/dbus/fake_shill_manager_client.cc
diff --git a/chromeos/dbus/fake_shill_manager_client.cc b/chromeos/dbus/fake_shill_manager_client.cc
index d0e392fd66a6a852d542d9d20b2704a11084bf57..2d2a05b1f69a3d6254694952faf50490619ae8ff 100644
--- a/chromeos/dbus/fake_shill_manager_client.cc
+++ b/chromeos/dbus/fake_shill_manager_client.cc
@@ -109,6 +109,7 @@ const char* kTechnologyUnavailable = "unavailable";
const char* kNetworkActivated = "activated";
const char* kNetworkDisabled = "disabled";
const char* kCellularServicePath = "/service/cellular1";
+const char* kRoamingRequired = "required";
} // namespace
@@ -769,6 +770,11 @@ void FakeShillManagerClient::SetupDefaultEnvironment() {
devices->SetDeviceProperty("/device/cellular1",
shill::kSupportedCarriersProperty,
carrier_list);
+ if (roaming_state_ == kRoamingRequired) {
+ devices->SetDeviceProperty("/device/cellular1",
+ shill::kProviderRequiresRoamingProperty,
+ base::FundamentalValue(true));
+ }
services->AddService(kCellularServicePath,
"cellular1_guid",
@@ -799,9 +805,16 @@ void FakeShillManagerClient::SetupDefaultEnvironment() {
base::StringValue(shill::kActivationStateNotActivated));
}
+ std::string shill_roaming_state;
+ if (roaming_state_ == kRoamingRequired)
+ shill_roaming_state = shill::kRoamingStateRoaming;
+ else if (roaming_state_.empty())
+ shill_roaming_state = shill::kRoamingStateHome;
+ else // |roaming_state_| is expected to be a valid Shill state.
+ shill_roaming_state = roaming_state_;
services->SetServiceProperty(kCellularServicePath,
shill::kRoamingStateProperty,
- base::StringValue(shill::kRoamingStateHome));
+ base::StringValue(shill_roaming_state));
profiles->AddService(shared_profile, kCellularServicePath);
}
@@ -1048,6 +1061,10 @@ bool FakeShillManagerClient::ParseOption(const std::string& arg0,
else
s_tdls_busy_count = 1;
return true;
+ } else if (arg0 == "roaming") {
+ // "home", "roaming", or "required"
+ roaming_state_ = arg1;
+ return true;
}
return SetInitialNetworkState(arg0, arg1);
}
« no previous file with comments | « chromeos/dbus/fake_shill_manager_client.h ('k') | chromeos/network/network_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698