Chromium Code Reviews| Index: chrome/browser/chromeos/settings/device_settings_service_unittest.cc |
| diff --git a/chrome/browser/chromeos/settings/device_settings_service_unittest.cc b/chrome/browser/chromeos/settings/device_settings_service_unittest.cc |
| index e0b4b79bfa87eb57eac22f1cf4fcec10763bd8c1..5e14e5c186903d99139d4f1f5a22721bf07753fc 100644 |
| --- a/chrome/browser/chromeos/settings/device_settings_service_unittest.cc |
| +++ b/chrome/browser/chromeos/settings/device_settings_service_unittest.cc |
| @@ -10,6 +10,8 @@ |
| #include "base/compiler_specific.h" |
| #include "base/time/time.h" |
| #include "chrome/browser/chromeos/ownership/owner_settings_service_chromeos.h" |
| +#include "chrome/browser/chromeos/ownership/owner_settings_service_chromeos.h" |
| +#include "chrome/browser/chromeos/ownership/owner_settings_service_chromeos_factory.h" |
| #include "chrome/browser/chromeos/ownership/owner_settings_service_chromeos_factory.h" |
| #include "chrome/browser/chromeos/policy/proto/chrome_device_policy.pb.h" |
| #include "chrome/browser/chromeos/settings/device_settings_test_helper.h" |
| @@ -44,6 +46,11 @@ class DeviceSettingsServiceTest : public DeviceSettingsTestBase { |
| operation_completed_ = true; |
| } |
| + void OnManagementSettingsSet(bool success) { |
| + management_settings_set_ = success; |
| + SetOperationCompleted(); |
| + } |
| + |
| void SetOwnershipStatus( |
| DeviceSettingsService::OwnershipStatus ownership_status) { |
| ownership_status_ = ownership_status; |
| @@ -57,6 +64,7 @@ class DeviceSettingsServiceTest : public DeviceSettingsTestBase { |
| protected: |
| DeviceSettingsServiceTest() |
| : operation_completed_(false), |
| + management_settings_set_(false), |
| is_owner_(true), |
| is_owner_set_(false), |
| ownership_status_(DeviceSettingsService::OWNERSHIP_UNKNOWN) {} |
| @@ -77,6 +85,7 @@ class DeviceSettingsServiceTest : public DeviceSettingsTestBase { |
| } |
| bool operation_completed_; |
| + bool management_settings_set_; |
| bool is_owner_; |
| bool is_owner_set_; |
| DeviceSettingsService::OwnershipStatus ownership_status_; |
| @@ -151,67 +160,59 @@ TEST_F(DeviceSettingsServiceTest, SetManagementSettingsModeTransition) { |
| InitOwner(device_policy_.policy_data().username(), true); |
| FlushDeviceSettings(); |
| + OwnerSettingsServiceChromeOS* service = |
| + OwnerSettingsServiceChromeOSFactory::GetForBrowserContext(profile_.get()); |
| + ASSERT_TRUE(service); |
| + |
| // The initial management mode should be LOCAL_OWNER. |
| EXPECT_EQ(em::PolicyData::LOCAL_OWNER, |
| device_settings_service_.policy_data()->management_mode()); |
| + OwnerSettingsServiceChromeOS::ManagementSettingsSetRequest |
| + management_settings; |
| + management_settings.management_mode = em::PolicyData::CONSUMER_MANAGED; |
| + management_settings.request_token = "fake_request_token"; |
| + management_settings.device_id = "fake_device_id"; |
| + management_settings.callback = |
| + base::Bind(&DeviceSettingsServiceTest::OnManagementSettingsSet, |
| + base::Unretained(this)); |
|
Mattias Nissler (ping if slow)
2014/12/01 15:25:41
It seems like these tests should rather migrate ov
ygorshenin1
2014/12/01 15:59:09
Good point, thanks!
|
| + |
| // LOCAL_OWNER -> CONSUMER_MANAGED: Okay. |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::CONSUMER_MANAGED, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + service->SetManagementSettings(management_settings); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |
| - EXPECT_EQ(DeviceSettingsService::STORE_SUCCESS, |
| - device_settings_service_.status()); |
| + EXPECT_TRUE(management_settings_set_); |
| EXPECT_EQ(em::PolicyData::CONSUMER_MANAGED, |
| device_settings_service_.policy_data()->management_mode()); |
| // CONSUMER_MANAGED -> ENTERPRISE_MANAGED: Invalid. |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::ENTERPRISE_MANAGED, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + management_settings.management_mode = em::PolicyData::ENTERPRISE_MANAGED; |
| + service->SetManagementSettings(management_settings); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |
| - EXPECT_EQ(DeviceSettingsService::STORE_POLICY_ERROR, |
| - device_settings_service_.status()); |
| + EXPECT_FALSE(management_settings_set_); |
| EXPECT_EQ(em::PolicyData::CONSUMER_MANAGED, |
| device_settings_service_.policy_data()->management_mode()); |
| // CONSUMER_MANAGED -> LOCAL_OWNER: Okay. |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::LOCAL_OWNER, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + management_settings.management_mode = em::PolicyData::LOCAL_OWNER; |
| + service->SetManagementSettings(management_settings); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |
| - EXPECT_EQ(DeviceSettingsService::STORE_SUCCESS, |
| - device_settings_service_.status()); |
| + EXPECT_TRUE(management_settings_set_); |
| EXPECT_EQ(em::PolicyData::LOCAL_OWNER, |
| device_settings_service_.policy_data()->management_mode()); |
| // LOCAL_OWNER -> ENTERPRISE_MANAGED: Invalid. |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::ENTERPRISE_MANAGED, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + management_settings.management_mode = em::PolicyData::ENTERPRISE_MANAGED; |
| + service->SetManagementSettings(management_settings); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |
| - EXPECT_EQ(DeviceSettingsService::STORE_POLICY_ERROR, |
| - device_settings_service_.status()); |
| + EXPECT_FALSE(management_settings_set_); |
| EXPECT_EQ(em::PolicyData::LOCAL_OWNER, |
| device_settings_service_.policy_data()->management_mode()); |
| @@ -225,35 +226,24 @@ TEST_F(DeviceSettingsServiceTest, SetManagementSettingsModeTransition) { |
| device_settings_service_.policy_data()->management_mode()); |
| // ENTERPRISE_MANAGED -> LOCAL_OWNER: Invalid. |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::LOCAL_OWNER, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + management_settings.management_mode = em::PolicyData::LOCAL_OWNER; |
| + service->SetManagementSettings(management_settings); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |
| - EXPECT_EQ(DeviceSettingsService::STORE_POLICY_ERROR, |
| - device_settings_service_.status()); |
| + EXPECT_FALSE(management_settings_set_); |
| EXPECT_EQ(em::PolicyData::ENTERPRISE_MANAGED, |
| device_settings_service_.policy_data()->management_mode()); |
| // ENTERPRISE_MANAGED -> CONSUMER_MANAGED: Invalid. |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::CONSUMER_MANAGED, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + management_settings.management_mode = em::PolicyData::CONSUMER_MANAGED; |
| + service->SetManagementSettings(management_settings); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |
| - EXPECT_EQ(DeviceSettingsService::STORE_POLICY_ERROR, |
| - device_settings_service_.status()); |
| + EXPECT_FALSE(management_settings_set_); |
| EXPECT_EQ(em::PolicyData::ENTERPRISE_MANAGED, |
| device_settings_service_.policy_data()->management_mode()); |
| - |
| } |
| TEST_F(DeviceSettingsServiceTest, SetManagementSettingsSuccess) { |
| @@ -265,12 +255,17 @@ TEST_F(DeviceSettingsServiceTest, SetManagementSettingsSuccess) { |
| InitOwner(device_policy_.policy_data().username(), true); |
| FlushDeviceSettings(); |
| - device_settings_service_.SetManagementSettings( |
| - em::PolicyData::CONSUMER_MANAGED, |
| - "fake_request_token", |
| - "fake_device_id", |
| - base::Bind(&DeviceSettingsServiceTest::SetOperationCompleted, |
| - base::Unretained(this))); |
| + OwnerSettingsServiceChromeOS* service = |
| + OwnerSettingsServiceChromeOSFactory::GetForBrowserContext(profile_.get()); |
| + ASSERT_TRUE(service); |
| + OwnerSettingsServiceChromeOS::ManagementSettingsSetRequest request; |
| + request.management_mode = em::PolicyData::CONSUMER_MANAGED; |
| + request.request_token = "fake_request_token"; |
| + request.device_id = "fake_device_id"; |
| + request.callback = |
| + base::Bind(&DeviceSettingsServiceTest::OnManagementSettingsSet, |
| + base::Unretained(this)); |
| + service->SetManagementSettings(request); |
| FlushDeviceSettings(); |
| EXPECT_TRUE(operation_completed_); |