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

Side by Side Diff: chrome/browser/extensions/extension_garbage_collector_chromeos_unittest.cc

Issue 378513005: [Athena] Extract Chrome OS authentication stack (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix includes in one more test Created 6 years, 5 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/file_util.h" 5 #include "base/file_util.h"
6 #include "base/prefs/scoped_user_pref_update.h" 6 #include "base/prefs/scoped_user_pref_update.h"
7 #include "base/prefs/testing_pref_service.h" 7 #include "base/prefs/testing_pref_service.h"
8 #include "base/strings/string_util.h" 8 #include "base/strings/string_util.h"
9 #include "base/threading/sequenced_worker_pool.h" 9 #include "base/threading/sequenced_worker_pool.h"
10 #include "base/values.h" 10 #include "base/values.h"
11 #include "chrome/browser/chromeos/login/users/fake_user_manager.h" 11 #include "chrome/browser/chromeos/login/users/fake_user_manager.h"
12 #include "chrome/browser/chromeos/login/users/user_manager.h" 12 #include "chrome/browser/chromeos/login/users/user_manager.h"
13 #include "chrome/browser/chromeos/profiles/profile_helper.h" 13 #include "chrome/browser/chromeos/profiles/profile_helper.h"
14 #include "chrome/browser/extensions/extension_assets_manager_chromeos.h" 14 #include "chrome/browser/extensions/extension_assets_manager_chromeos.h"
15 #include "chrome/browser/extensions/extension_garbage_collector_chromeos.h" 15 #include "chrome/browser/extensions/extension_garbage_collector_chromeos.h"
16 #include "chrome/browser/extensions/extension_service.h" 16 #include "chrome/browser/extensions/extension_service.h"
17 #include "chrome/browser/extensions/extension_service_test_base.h" 17 #include "chrome/browser/extensions/extension_service_test_base.h"
18 #include "chrome/browser/prefs/browser_prefs.h" 18 #include "chrome/browser/prefs/browser_prefs.h"
19 #include "chrome/browser/profiles/profile.h" 19 #include "chrome/browser/profiles/profile.h"
20 #include "chrome/test/base/testing_browser_process.h" 20 #include "chrome/test/base/testing_browser_process.h"
21 #include "chrome/test/base/testing_profile.h" 21 #include "chrome/test/base/testing_profile.h"
22 #include "chromeos/login/user_names.h"
22 #include "content/public/browser/browser_thread.h" 23 #include "content/public/browser/browser_thread.h"
23 #include "content/public/browser/plugin_service.h" 24 #include "content/public/browser/plugin_service.h"
24 #include "extensions/browser/extension_prefs.h" 25 #include "extensions/browser/extension_prefs.h"
25 #include "extensions/browser/install_flag.h" 26 #include "extensions/browser/install_flag.h"
26 #include "extensions/common/manifest_constants.h" 27 #include "extensions/common/manifest_constants.h"
27 28
28 namespace { 29 namespace {
29 const char kExtensionId1[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 30 const char kExtensionId1[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
30 const char kExtensionId2[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"; 31 const char kExtensionId2[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
31 } // namespace 32 } // namespace
(...skipping 24 matching lines...) Expand all
56 base::SequencedWorkerPool::SKIP_ON_SHUTDOWN)); 57 base::SequencedWorkerPool::SKIP_ON_SHUTDOWN));
57 58
58 CHECK(cache_dir_.CreateUniqueTempDir()); 59 CHECK(cache_dir_.CreateUniqueTempDir());
59 ExtensionAssetsManagerChromeOS::SetSharedInstallDirForTesting(cache_dir()); 60 ExtensionAssetsManagerChromeOS::SetSharedInstallDirForTesting(cache_dir());
60 ExtensionGarbageCollectorChromeOS::ClearGarbageCollectedForTesting(); 61 ExtensionGarbageCollectorChromeOS::ClearGarbageCollectedForTesting();
61 62
62 // Initialize the UserManager singleton to a fresh FakeUserManager instance. 63 // Initialize the UserManager singleton to a fresh FakeUserManager instance.
63 user_manager_enabler_.reset( 64 user_manager_enabler_.reset(
64 new chromeos::ScopedUserManagerEnabler(new chromeos::FakeUserManager)); 65 new chromeos::ScopedUserManagerEnabler(new chromeos::FakeUserManager));
65 66
66 GetFakeUserManager()->AddUser(chromeos::UserManager::kStubUser); 67 GetFakeUserManager()->AddUser(chromeos::login::kStubUser);
67 GetFakeUserManager()->LoginUser(chromeos::UserManager::kStubUser); 68 GetFakeUserManager()->LoginUser(chromeos::login::kStubUser);
68 chromeos::ProfileHelper::Get()->SetUserToProfileMappingForTesting( 69 chromeos::ProfileHelper::Get()->SetUserToProfileMappingForTesting(
69 GetFakeUserManager()->GetActiveUser(), profile_.get()); 70 GetFakeUserManager()->GetActiveUser(), profile_.get());
70 } 71 }
71 72
72 virtual void TearDown() OVERRIDE { 73 virtual void TearDown() OVERRIDE {
73 TestingBrowserProcess::GetGlobal()->SetLocalState(NULL); 74 TestingBrowserProcess::GetGlobal()->SetLocalState(NULL);
74 } 75 }
75 76
76 void GarbageCollectExtensions() { 77 void GarbageCollectExtensions() {
77 ExtensionGarbageCollector::Get(profile_.get()) 78 ExtensionGarbageCollector::Get(profile_.get())
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 // Version for non-existing user. 154 // Version for non-existing user.
154 base::FilePath path_id1_1 = CreateSharedExtensionDir( 155 base::FilePath path_id1_1 = CreateSharedExtensionDir(
155 kExtensionId1, "1.0", cache_dir()); 156 kExtensionId1, "1.0", cache_dir());
156 CreateSharedExtensionPrefs(kExtensionId1, "1.0", "test@test.com", path_id1_1); 157 CreateSharedExtensionPrefs(kExtensionId1, "1.0", "test@test.com", path_id1_1);
157 EXPECT_TRUE(base::PathExists(path_id1_1)); 158 EXPECT_TRUE(base::PathExists(path_id1_1));
158 159
159 // Version for current user but the extension is not installed. 160 // Version for current user but the extension is not installed.
160 base::FilePath path_id1_2 = CreateSharedExtensionDir( 161 base::FilePath path_id1_2 = CreateSharedExtensionDir(
161 kExtensionId1, "2.0", cache_dir()); 162 kExtensionId1, "2.0", cache_dir());
162 CreateSharedExtensionPrefs( 163 CreateSharedExtensionPrefs(
163 kExtensionId1, "2.0", chromeos::UserManager::kStubUser, path_id1_2); 164 kExtensionId1, "2.0", chromeos::login::kStubUser, path_id1_2);
164 EXPECT_TRUE(base::PathExists(path_id1_2)); 165 EXPECT_TRUE(base::PathExists(path_id1_2));
165 166
166 // Version for current user that delayed install. 167 // Version for current user that delayed install.
167 base::FilePath path_id2_1 = CreateSharedExtensionDir( 168 base::FilePath path_id2_1 = CreateSharedExtensionDir(
168 kExtensionId2, "1.0", cache_dir()); 169 kExtensionId2, "1.0", cache_dir());
169 CreateSharedExtensionPrefs( 170 CreateSharedExtensionPrefs(
170 kExtensionId2, "1.0", chromeos::UserManager::kStubUser, path_id2_1); 171 kExtensionId2, "1.0", chromeos::login::kStubUser, path_id2_1);
171 scoped_refptr<Extension> extension2 = CreateExtension(kExtensionId2, "1.0", 172 scoped_refptr<Extension> extension2 = CreateExtension(kExtensionId2, "1.0",
172 path_id2_1); 173 path_id2_1);
173 GetExtensionPrefs()->SetDelayedInstallInfo( 174 GetExtensionPrefs()->SetDelayedInstallInfo(
174 extension2.get(), 175 extension2.get(),
175 Extension::ENABLED, 176 Extension::ENABLED,
176 kInstallFlagNone, 177 kInstallFlagNone,
177 ExtensionPrefs::DELAY_REASON_WAIT_FOR_IDLE, 178 ExtensionPrefs::DELAY_REASON_WAIT_FOR_IDLE,
178 syncer::StringOrdinal(), 179 syncer::StringOrdinal(),
179 std::string()); 180 std::string());
180 EXPECT_TRUE(base::PathExists(path_id2_1)); 181 EXPECT_TRUE(base::PathExists(path_id2_1));
181 182
182 GarbageCollectExtensions(); 183 GarbageCollectExtensions();
183 184
184 EXPECT_FALSE(base::PathExists(path_id1_1)); 185 EXPECT_FALSE(base::PathExists(path_id1_1));
185 EXPECT_FALSE(base::PathExists(path_id1_2)); 186 EXPECT_FALSE(base::PathExists(path_id1_2));
186 EXPECT_FALSE(base::PathExists(cache_dir().AppendASCII(kExtensionId1))); 187 EXPECT_FALSE(base::PathExists(cache_dir().AppendASCII(kExtensionId1)));
187 188
188 EXPECT_TRUE(base::PathExists(path_id2_1)); 189 EXPECT_TRUE(base::PathExists(path_id2_1));
189 190
190 const base::DictionaryValue* shared_extensions = local_state().GetDictionary( 191 const base::DictionaryValue* shared_extensions = local_state().GetDictionary(
191 ExtensionAssetsManagerChromeOS::kSharedExtensions); 192 ExtensionAssetsManagerChromeOS::kSharedExtensions);
192 ASSERT_TRUE(shared_extensions); 193 ASSERT_TRUE(shared_extensions);
193 194
194 EXPECT_FALSE(shared_extensions->HasKey(kExtensionId1)); 195 EXPECT_FALSE(shared_extensions->HasKey(kExtensionId1));
195 EXPECT_TRUE(shared_extensions->HasKey(kExtensionId2)); 196 EXPECT_TRUE(shared_extensions->HasKey(kExtensionId2));
196 } 197 }
197 198
198 } // namespace extensions 199 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698