OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/installer/setup/setup_util_unittest.h" | 5 #include "chrome/installer/setup/setup_util_unittest.h" |
6 | 6 |
7 #include <windows.h> | 7 #include <windows.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 17 matching lines...) Expand all Loading... |
28 #include "chrome/installer/util/installation_state.h" | 28 #include "chrome/installer/util/installation_state.h" |
29 #include "chrome/installer/util/installer_state.h" | 29 #include "chrome/installer/util/installer_state.h" |
30 #include "chrome/installer/util/updating_app_registration_data.h" | 30 #include "chrome/installer/util/updating_app_registration_data.h" |
31 #include "chrome/installer/util/util_constants.h" | 31 #include "chrome/installer/util/util_constants.h" |
32 #include "testing/gtest/include/gtest/gtest.h" | 32 #include "testing/gtest/include/gtest/gtest.h" |
33 | 33 |
34 namespace { | 34 namespace { |
35 | 35 |
36 class SetupUtilTestWithDir : public testing::Test { | 36 class SetupUtilTestWithDir : public testing::Test { |
37 protected: | 37 protected: |
38 virtual void SetUp() override { | 38 void SetUp() override { |
39 // Create a temp directory for testing. | 39 // Create a temp directory for testing. |
40 ASSERT_TRUE(test_dir_.CreateUniqueTempDir()); | 40 ASSERT_TRUE(test_dir_.CreateUniqueTempDir()); |
41 } | 41 } |
42 | 42 |
43 virtual void TearDown() override { | 43 void TearDown() override { |
44 // Clean up test directory manually so we can fail if it leaks. | 44 // Clean up test directory manually so we can fail if it leaks. |
45 ASSERT_TRUE(test_dir_.Delete()); | 45 ASSERT_TRUE(test_dir_.Delete()); |
46 } | 46 } |
47 | 47 |
48 // The temporary directory used to contain the test operations. | 48 // The temporary directory used to contain the test operations. |
49 base::ScopedTempDir test_dir_; | 49 base::ScopedTempDir test_dir_; |
50 }; | 50 }; |
51 | 51 |
52 // The privilege tested in ScopeTokenPrivilege tests below. | 52 // The privilege tested in ScopeTokenPrivilege tests below. |
53 // Use SE_RESTORE_NAME as it is one of the many privileges that is available, | 53 // Use SE_RESTORE_NAME as it is one of the many privileges that is available, |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
283 version_.reset(new Version(version)); | 283 version_.reset(new Version(version)); |
284 else | 284 else |
285 version_.reset(); | 285 version_.reset(); |
286 } | 286 } |
287 | 287 |
288 void set_uninstall_command(const base::CommandLine& uninstall_command) { | 288 void set_uninstall_command(const base::CommandLine& uninstall_command) { |
289 uninstall_command_ = uninstall_command; | 289 uninstall_command_ = uninstall_command; |
290 } | 290 } |
291 }; | 291 }; |
292 | 292 |
293 virtual void SetUp() override { | 293 void SetUp() override { |
294 SetupUtilTestWithDir::SetUp(); | 294 SetupUtilTestWithDir::SetUp(); |
295 product_version_ = Version("30.0.1559.0"); | 295 product_version_ = Version("30.0.1559.0"); |
296 max_version_ = Version("47.0.1559.0"); | 296 max_version_ = Version("47.0.1559.0"); |
297 | 297 |
298 // Install the product according to the version. | 298 // Install the product according to the version. |
299 original_state_.reset(new FakeInstallationState()); | 299 original_state_.reset(new FakeInstallationState()); |
300 InstallProduct(); | 300 InstallProduct(); |
301 | 301 |
302 // Prepare to update the product in the temp dir. | 302 // Prepare to update the product in the temp dir. |
303 installer_state_.reset(new installer::InstallerState( | 303 installer_state_.reset(new installer::InstallerState( |
304 kSystemInstall_ ? installer::InstallerState::SYSTEM_LEVEL : | 304 kSystemInstall_ ? installer::InstallerState::SYSTEM_LEVEL : |
305 installer::InstallerState::USER_LEVEL)); | 305 installer::InstallerState::USER_LEVEL)); |
306 installer_state_->AddProductFromState( | 306 installer_state_->AddProductFromState( |
307 kProductType_, | 307 kProductType_, |
308 *original_state_->GetProductState(kSystemInstall_, kProductType_)); | 308 *original_state_->GetProductState(kSystemInstall_, kProductType_)); |
309 | 309 |
310 // Create archives in the two version dirs. | 310 // Create archives in the two version dirs. |
311 ASSERT_TRUE( | 311 ASSERT_TRUE( |
312 base::CreateDirectory(GetProductVersionArchivePath().DirName())); | 312 base::CreateDirectory(GetProductVersionArchivePath().DirName())); |
313 ASSERT_EQ(1, base::WriteFile(GetProductVersionArchivePath(), "a", 1)); | 313 ASSERT_EQ(1, base::WriteFile(GetProductVersionArchivePath(), "a", 1)); |
314 ASSERT_TRUE( | 314 ASSERT_TRUE( |
315 base::CreateDirectory(GetMaxVersionArchivePath().DirName())); | 315 base::CreateDirectory(GetMaxVersionArchivePath().DirName())); |
316 ASSERT_EQ(1, base::WriteFile(GetMaxVersionArchivePath(), "b", 1)); | 316 ASSERT_EQ(1, base::WriteFile(GetMaxVersionArchivePath(), "b", 1)); |
317 } | 317 } |
318 | 318 |
319 virtual void TearDown() override { | 319 void TearDown() override { |
320 original_state_.reset(); | 320 original_state_.reset(); |
321 SetupUtilTestWithDir::TearDown(); | 321 SetupUtilTestWithDir::TearDown(); |
322 } | 322 } |
323 | 323 |
324 base::FilePath GetArchivePath(const Version& version) const { | 324 base::FilePath GetArchivePath(const Version& version) const { |
325 return test_dir_.path() | 325 return test_dir_.path() |
326 .AppendASCII(version.GetString()) | 326 .AppendASCII(version.GetString()) |
327 .Append(installer::kInstallerDir) | 327 .Append(installer::kInstallerDir) |
328 .Append(installer::kChromeArchive); | 328 .Append(installer::kChromeArchive); |
329 } | 329 } |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
404 | 404 |
405 base::FilePath patch_source(installer::FindArchiveToPatch( | 405 base::FilePath patch_source(installer::FindArchiveToPatch( |
406 *original_state_, *installer_state_)); | 406 *original_state_, *installer_state_)); |
407 EXPECT_EQ(base::FilePath::StringType(), patch_source.value()); | 407 EXPECT_EQ(base::FilePath::StringType(), patch_source.value()); |
408 } | 408 } |
409 | 409 |
410 namespace { | 410 namespace { |
411 | 411 |
412 class MigrateMultiToSingleTest : public testing::Test { | 412 class MigrateMultiToSingleTest : public testing::Test { |
413 protected: | 413 protected: |
414 virtual void SetUp() override { | 414 void SetUp() override { |
415 registry_override_manager_.OverrideRegistry(kRootKey); | 415 registry_override_manager_.OverrideRegistry(kRootKey); |
416 } | 416 } |
417 | 417 |
418 static const bool kSystemLevel = false; | 418 static const bool kSystemLevel = false; |
419 static const HKEY kRootKey; | 419 static const HKEY kRootKey; |
420 static const wchar_t kVersionString[]; | 420 static const wchar_t kVersionString[]; |
421 static const wchar_t kMultiChannel[]; | 421 static const wchar_t kMultiChannel[]; |
422 registry_util::RegistryOverrideManager registry_override_manager_; | 422 registry_util::RegistryOverrideManager registry_override_manager_; |
423 }; | 423 }; |
424 | 424 |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
498 base::CommandLine::FromString(L"foo.exe --chrome-frame"))); | 498 base::CommandLine::FromString(L"foo.exe --chrome-frame"))); |
499 } | 499 } |
500 | 500 |
501 TEST(SetupUtilTest, GetRegistrationDataCommandKey) { | 501 TEST(SetupUtilTest, GetRegistrationDataCommandKey) { |
502 base::string16 app_guid = L"{AAAAAAAA-BBBB-1111-0123-456789ABCDEF}"; | 502 base::string16 app_guid = L"{AAAAAAAA-BBBB-1111-0123-456789ABCDEF}"; |
503 UpdatingAppRegistrationData reg_data(app_guid); | 503 UpdatingAppRegistrationData reg_data(app_guid); |
504 base::string16 key = | 504 base::string16 key = |
505 installer::GetRegistrationDataCommandKey(reg_data, L"test_name"); | 505 installer::GetRegistrationDataCommandKey(reg_data, L"test_name"); |
506 EXPECT_TRUE(EndsWith(key, app_guid + L"\\Commands\\test_name", true)); | 506 EXPECT_TRUE(EndsWith(key, app_guid + L"\\Commands\\test_name", true)); |
507 } | 507 } |
OLD | NEW |