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

Unified Diff: chrome/browser/policy/device_token_fetcher_unittest.cc

Issue 9403010: Add support for kiosk mode on the client. Make sure the settings are written in the lockbox. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed comments and added two more tests and cleaned includes. Created 8 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
Index: chrome/browser/policy/device_token_fetcher_unittest.cc
diff --git a/chrome/browser/policy/device_token_fetcher_unittest.cc b/chrome/browser/policy/device_token_fetcher_unittest.cc
index a8ae3182dfde5789aa9685da794b3931099de0fe..6d55ae1817330c9571bc3dce653c6222a6fbb237 100644
--- a/chrome/browser/policy/device_token_fetcher_unittest.cc
+++ b/chrome/browser/policy/device_token_fetcher_unittest.cc
@@ -35,6 +35,8 @@ class DeviceTokenFetcherTest : public testing::Test {
EXPECT_TRUE(temp_user_data_dir_.CreateUniqueTempDir());
successful_registration_response_.mutable_register_response()->
set_device_management_token("fake_token");
+ successful_registration_response_.mutable_register_response()->
+ set_enrollment_type(em::DeviceRegisterResponse::ENTERPRISE);
}
virtual void SetUp() {
@@ -107,11 +109,14 @@ TEST_F(DeviceTokenFetcherTest, FetchToken) {
&notifier_);
EXPECT_CALL(observer_, OnDeviceTokenChanged());
EXPECT_EQ("", data_store_->device_token());
+ EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store_->device_mode());
FetchToken(&fetcher);
loop_.RunAllPending();
Mock::VerifyAndClearExpectations(&observer_);
std::string token = data_store_->device_token();
EXPECT_NE("", token);
+ // User policy registration should not set enrollment mode.
+ EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store_->device_mode());
// Calling FetchToken() again should result in a new token being fetched.
successful_registration_response_.mutable_register_response()->
@@ -128,6 +133,62 @@ TEST_F(DeviceTokenFetcherTest, FetchToken) {
EXPECT_NE(token, token2);
}
+// User token fetches does not have to carry enrollment type.
Mattias Nissler (ping if slow) 2012/02/21 10:37:46 That comment is misleading, since the test is real
pastarmovj 2012/02/21 14:57:08 Yep. I removed the comment here and put it down at
+TEST_F(DeviceTokenFetcherTest, FetchDeviceToken) {
+ testing::InSequence s;
+ scoped_ptr<CloudPolicyDataStore> data_store(
+ CloudPolicyDataStore::CreateForDevicePolicies());
+ data_store->AddObserver(&observer_);
Mattias Nissler (ping if slow) 2012/02/21 10:37:46 do you actually need the observer for this test? I
pastarmovj 2012/02/21 14:57:08 Done.
+ EXPECT_CALL(service_,
+ CreateJob(DeviceManagementRequestJob::TYPE_REGISTRATION))
+ .WillOnce(service_.SucceedJob(successful_registration_response_));
+ EXPECT_CALL(service_, StartJob(_)).WillOnce(VerifyRegisterRequest(false));
+ DeviceTokenFetcher fetcher(&service_, cache_.get(), data_store.get(),
+ &notifier_);
+ EXPECT_CALL(observer_, OnDeviceTokenChanged());
+ EXPECT_EQ("", data_store->device_token());
+ EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store->device_mode());
+ data_store->SetupForTesting("", "fake_device_id", "fake_user_name",
+ "fake_auth_token", true);
+ fetcher.FetchToken();
+ loop_.RunAllPending();
+ Mock::VerifyAndClearExpectations(&observer_);
+ EXPECT_NE("", data_store->device_token());
+ EXPECT_EQ(DEVICE_MODE_ENTERPRISE, data_store->device_mode());
+
+ data_store->RemoveObserver(&observer_);
+}
+
+// TODO(pastarmovj): This test must be changed in accordance with
+// http://crosbug.com/26624.
+TEST_F(DeviceTokenFetcherTest, FetchDeviceTokenMissingMode) {
+ testing::InSequence s;
+ scoped_ptr<CloudPolicyDataStore> data_store(
+ CloudPolicyDataStore::CreateForDevicePolicies());
+ data_store->AddObserver(&observer_);
Mattias Nissler (ping if slow) 2012/02/21 10:37:46 ditto
pastarmovj 2012/02/21 14:57:08 Done.
+ EXPECT_CALL(service_,
+ CreateJob(DeviceManagementRequestJob::TYPE_REGISTRATION))
+ .WillOnce(service_.SucceedJob(successful_registration_response_));
+ EXPECT_CALL(service_, StartJob(_)).WillOnce(VerifyRegisterRequest(false));
+ DeviceTokenFetcher fetcher(&service_, cache_.get(), data_store.get(),
+ &notifier_);
+ EXPECT_CALL(observer_, OnDeviceTokenChanged());
+ EXPECT_EQ("", data_store->device_token());
+ EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store->device_mode());
+ data_store->SetupForTesting("", "fake_device_id", "fake_user_name",
+ "fake_auth_token", true);
Mattias Nissler (ping if slow) 2012/02/21 10:37:46 It looks like this setup code is now duplicated 3
pastarmovj 2012/02/21 14:57:08 Did some consolidation. Could push it further but
+ successful_registration_response_.mutable_register_response()->
+ clear_enrollment_type();
+ fetcher.FetchToken();
+ loop_.RunAllPending();
+ Mock::VerifyAndClearExpectations(&observer_);
+ EXPECT_NE("", data_store->device_token());
+ // TODO(pastarmovj): Modify when http://crosbug.com/26624 is resolved.
+ EXPECT_EQ(DEVICE_MODE_ENTERPRISE, data_store->device_mode());
+
+ data_store->RemoveObserver(&observer_);
+}
+
TEST_F(DeviceTokenFetcherTest, RetryOnError) {
testing::InSequence s;
EXPECT_CALL(service_,

Powered by Google App Engine
This is Rietveld 408576698