1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
7 #include "base/prefs/pref_service.h"
8 #include "chrome/browser/supervised_user/supervised_user_constants.h"
9 #include "chrome/browser/supervised_user/supervised_user_pref_mapping_service.h"
10 #include "chrome/browser/supervised_user/supervised_user_pref_mapping_service_factory.h"
11 #include "chrome/browser/supervised_user/supervised_user_shared_settings_service.h"
12 #include "chrome/browser/supervised_user/supervised_user_shared_settings_service_factory.h"
13 #include "chrome/common/pref_names.h"
14 #include "chrome/test/base/testing_profile.h"
15 #include "testing/gtest/include/gtest/gtest.h"
17 const char kFakeSupervisedUserId
[] = "fakeID";
19 class SupervisedUserPrefMappingServiceTest
: public ::testing::Test
{
21 SupervisedUserPrefMappingServiceTest() {
22 profile_
.GetPrefs()->SetString(prefs::kSupervisedUserId
,
23 kFakeSupervisedUserId
);
24 shared_settings_service_
=
25 SupervisedUserSharedSettingsServiceFactory::GetForBrowserContext(
28 SupervisedUserPrefMappingServiceFactory::GetForBrowserContext(
31 virtual ~SupervisedUserPrefMappingServiceTest() {}
33 // testing::Test overrides:
34 virtual void SetUp() OVERRIDE
{
35 mapping_service_
->Init();
38 virtual void TearDown() OVERRIDE
{
39 mapping_service_
->Shutdown();
40 shared_settings_service_
->Shutdown();
43 TestingProfile profile_
;
44 SupervisedUserSharedSettingsService
* shared_settings_service_
;
45 SupervisedUserPrefMappingService
* mapping_service_
;
48 TEST_F(SupervisedUserPrefMappingServiceTest
, CheckPrefUpdate
) {
49 EXPECT_TRUE(shared_settings_service_
->GetValue(
50 kFakeSupervisedUserId
,
51 supervised_users::kChromeAvatarIndex
) == NULL
);
52 profile_
.GetPrefs()->SetInteger(prefs::kProfileAvatarIndex
, 4);
53 const base::Value
* value
= shared_settings_service_
->GetValue(
54 kFakeSupervisedUserId
, supervised_users::kChromeAvatarIndex
);
56 value
->GetAsInteger(&avatar_index
);
57 EXPECT_EQ(avatar_index
, 4);
60 TEST_F(SupervisedUserPrefMappingServiceTest
, CheckSharedSettingUpdate
) {
61 EXPECT_EQ(profile_
.GetPrefs()->GetInteger(prefs::kProfileAvatarIndex
), -1);
62 shared_settings_service_
->SetValue(kFakeSupervisedUserId
,
63 supervised_users::kChromeAvatarIndex
,
64 base::FundamentalValue(1));
65 mapping_service_
->OnSharedSettingChanged(
66 kFakeSupervisedUserId
,
67 supervised_users::kChromeAvatarIndex
);
68 EXPECT_EQ(profile_
.GetPrefs()->GetInteger(prefs::kProfileAvatarIndex
), 1);