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

Side by Side Diff: chrome/installer/util/google_update_settings_unittest.cc

Issue 2919963002: Clean Read/SetExperimentLabels to remove check for Chrome build. (Closed)
Patch Set: Fix includes in chrome_variations_service_client.cc Created 3 years, 6 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
« no previous file with comments | « chrome/installer/util/google_update_settings.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/util/google_update_settings.h" 5 #include "chrome/installer/util/google_update_settings.h"
6 6
7 #include <windows.h> 7 #include <windows.h>
8 #include <shlwapi.h> // For SHDeleteKey. 8 #include <shlwapi.h> // For SHDeleteKey.
9 #include <stddef.h> 9 #include <stddef.h>
10 10
(...skipping 21 matching lines...) Expand all
32 #include "chrome/installer/util/work_item_list.h" 32 #include "chrome/installer/util/work_item_list.h"
33 #include "testing/gtest/include/gtest/gtest.h" 33 #include "testing/gtest/include/gtest/gtest.h"
34 34
35 using base::win::RegKey; 35 using base::win::RegKey;
36 using installer::ChannelInfo; 36 using installer::ChannelInfo;
37 37
38 namespace { 38 namespace {
39 39
40 const wchar_t kTestProductGuid[] = L"{89F1B351-B15D-48D4-8F10-1298721CF13D}"; 40 const wchar_t kTestProductGuid[] = L"{89F1B351-B15D-48D4-8F10-1298721CF13D}";
41 41
42 #if defined(GOOGLE_CHROME_BUILD)
43 const wchar_t kTestExperimentLabel[] = L"test_label_value"; 42 const wchar_t kTestExperimentLabel[] = L"test_label_value";
44 #endif
45 43
46 // This test fixture redirects the HKLM and HKCU registry hives for 44 // This test fixture redirects the HKLM and HKCU registry hives for
47 // the duration of the test to make it independent of the machine 45 // the duration of the test to make it independent of the machine
48 // and user settings. 46 // and user settings.
49 class GoogleUpdateSettingsTest : public testing::Test { 47 class GoogleUpdateSettingsTest : public testing::Test {
50 protected: 48 protected:
51 enum SystemUserInstall { 49 enum SystemUserInstall {
52 SYSTEM_INSTALL, 50 SYSTEM_INSTALL,
53 USER_INSTALL, 51 USER_INSTALL,
54 }; 52 };
55 53
56 GoogleUpdateSettingsTest() 54 GoogleUpdateSettingsTest()
57 : program_files_override_(base::DIR_PROGRAM_FILES), 55 : program_files_override_(base::DIR_PROGRAM_FILES),
58 program_files_x86_override_(base::DIR_PROGRAM_FILESX86) {} 56 program_files_x86_override_(base::DIR_PROGRAM_FILESX86) {}
59 57
60 void SetUp() override { 58 void SetUp() override {
61 ASSERT_NO_FATAL_FAILURE( 59 ASSERT_NO_FATAL_FAILURE(
62 registry_overrides_.OverrideRegistry(HKEY_LOCAL_MACHINE)); 60 registry_overrides_.OverrideRegistry(HKEY_LOCAL_MACHINE));
63 ASSERT_NO_FATAL_FAILURE( 61 ASSERT_NO_FATAL_FAILURE(
64 registry_overrides_.OverrideRegistry(HKEY_CURRENT_USER)); 62 registry_overrides_.OverrideRegistry(HKEY_CURRENT_USER));
65 } 63 }
66 64
67 // Test the writing and deleting functionality of the experiments label 65 // Test the writing and deleting functionality of the experiments label
68 // helper. 66 // helper.
69 void TestExperimentsLabelHelper(SystemUserInstall install) { 67 void TestExperimentsLabelHelper(SystemUserInstall install) {
70 // Install a basic InstallDetails instance. 68 // Install a basic InstallDetails instance.
71 install_static::ScopedInstallDetails details(install == SYSTEM_INSTALL); 69 install_static::ScopedInstallDetails details(install == SYSTEM_INSTALL);
72 70
73 base::string16 value; 71 base::string16 value;
74 #if defined(GOOGLE_CHROME_BUILD)
75 // Before anything is set, ReadExperimentLabels should succeed but return 72 // Before anything is set, ReadExperimentLabels should succeed but return
76 // an empty string. 73 // an empty string.
77 EXPECT_TRUE(GoogleUpdateSettings::ReadExperimentLabels( 74 EXPECT_TRUE(GoogleUpdateSettings::ReadExperimentLabels(
78 install == SYSTEM_INSTALL, &value)); 75 install == SYSTEM_INSTALL, &value));
79 EXPECT_EQ(base::string16(), value); 76 EXPECT_EQ(base::string16(), value);
80 77
81 EXPECT_TRUE(GoogleUpdateSettings::SetExperimentLabels( 78 EXPECT_TRUE(GoogleUpdateSettings::SetExperimentLabels(
82 install == SYSTEM_INSTALL, kTestExperimentLabel)); 79 install == SYSTEM_INSTALL, kTestExperimentLabel));
83 80
84 // Validate that something is written. Only worry about the label itself. 81 // Validate that something is written. Only worry about the label itself.
(...skipping 19 matching lines...) Expand all
104 EXPECT_TRUE(GoogleUpdateSettings::SetExperimentLabels( 101 EXPECT_TRUE(GoogleUpdateSettings::SetExperimentLabels(
105 install == SYSTEM_INSTALL, base::string16())); 102 install == SYSTEM_INSTALL, base::string16()));
106 EXPECT_EQ(ERROR_SUCCESS, 103 EXPECT_EQ(ERROR_SUCCESS,
107 key.Open(root, state_key.c_str(), KEY_QUERY_VALUE)); 104 key.Open(root, state_key.c_str(), KEY_QUERY_VALUE));
108 EXPECT_EQ(ERROR_FILE_NOT_FOUND, 105 EXPECT_EQ(ERROR_FILE_NOT_FOUND,
109 key.ReadValue(google_update::kExperimentLabels, &value)); 106 key.ReadValue(google_update::kExperimentLabels, &value));
110 EXPECT_TRUE(GoogleUpdateSettings::ReadExperimentLabels( 107 EXPECT_TRUE(GoogleUpdateSettings::ReadExperimentLabels(
111 install == SYSTEM_INSTALL, &value)); 108 install == SYSTEM_INSTALL, &value));
112 EXPECT_EQ(base::string16(), value); 109 EXPECT_EQ(base::string16(), value);
113 key.Close(); 110 key.Close();
114 #else
115 EXPECT_FALSE(GoogleUpdateSettings::ReadExperimentLabels(
116 install == SYSTEM_INSTALL, &value));
117 #endif // GOOGLE_CHROME_BUILD
118 } 111 }
119 112
120 // Creates "ap" key with the value given as parameter. Also adds work 113 // Creates "ap" key with the value given as parameter. Also adds work
121 // items to work_item_list given so that they can be rolled back later. 114 // items to work_item_list given so that they can be rolled back later.
122 bool CreateApKey(WorkItemList* work_item_list, const base::string16& value) { 115 bool CreateApKey(WorkItemList* work_item_list, const base::string16& value) {
123 HKEY reg_root = HKEY_CURRENT_USER; 116 HKEY reg_root = HKEY_CURRENT_USER;
124 base::string16 reg_key = GetApKeyPath(); 117 base::string16 reg_key = GetApKeyPath();
125 work_item_list->AddCreateRegKeyWorkItem( 118 work_item_list->AddCreateRegKeyWorkItem(
126 reg_root, reg_key, WorkItem::kWow64Default); 119 reg_root, reg_key, WorkItem::kWow64Default);
127 work_item_list->AddSetRegValueWorkItem(reg_root, 120 work_item_list->AddSetRegValueWorkItem(reg_root,
(...skipping 645 matching lines...) Expand 10 before | Expand all | Expand 10 after
773 EXPECT_TRUE(GoogleUpdateSettings::AreAutoupdatesEnabled()); 766 EXPECT_TRUE(GoogleUpdateSettings::AreAutoupdatesEnabled());
774 767
775 // Set the update period to something unreasonable. 768 // Set the update period to something unreasonable.
776 EXPECT_TRUE(SetUpdateTimeoutOverride( 769 EXPECT_TRUE(SetUpdateTimeoutOverride(
777 GoogleUpdateSettings::kCheckPeriodOverrideMinutesMax + 1)); 770 GoogleUpdateSettings::kCheckPeriodOverrideMinutesMax + 1));
778 EXPECT_FALSE(GoogleUpdateSettings::AreAutoupdatesEnabled()); 771 EXPECT_FALSE(GoogleUpdateSettings::AreAutoupdatesEnabled());
779 EXPECT_TRUE(GoogleUpdateSettings::ReenableAutoupdates()); 772 EXPECT_TRUE(GoogleUpdateSettings::ReenableAutoupdates());
780 EXPECT_TRUE(GoogleUpdateSettings::AreAutoupdatesEnabled()); 773 EXPECT_TRUE(GoogleUpdateSettings::AreAutoupdatesEnabled());
781 } 774 }
782 775
776 #endif // defined(GOOGLE_CHROME_BUILD)
777
783 TEST_F(GoogleUpdateSettingsTest, ExperimentsLabelHelperSystem) { 778 TEST_F(GoogleUpdateSettingsTest, ExperimentsLabelHelperSystem) {
784 TestExperimentsLabelHelper(SYSTEM_INSTALL); 779 TestExperimentsLabelHelper(SYSTEM_INSTALL);
785 } 780 }
786 781
787 TEST_F(GoogleUpdateSettingsTest, ExperimentsLabelHelperUser) { 782 TEST_F(GoogleUpdateSettingsTest, ExperimentsLabelHelperUser) {
788 TestExperimentsLabelHelper(USER_INSTALL); 783 TestExperimentsLabelHelper(USER_INSTALL);
789 } 784 }
790 785
791 #endif // defined(GOOGLE_CHROME_BUILD)
792
793 TEST_F(GoogleUpdateSettingsTest, GetDownloadPreference) { 786 TEST_F(GoogleUpdateSettingsTest, GetDownloadPreference) {
794 RegKey policy_key; 787 RegKey policy_key;
795 788
796 if (policy_key.Open(HKEY_LOCAL_MACHINE, GoogleUpdateSettings::kPoliciesKey, 789 if (policy_key.Open(HKEY_LOCAL_MACHINE, GoogleUpdateSettings::kPoliciesKey,
797 KEY_SET_VALUE) == ERROR_SUCCESS) { 790 KEY_SET_VALUE) == ERROR_SUCCESS) {
798 policy_key.DeleteValue( 791 policy_key.DeleteValue(
799 GoogleUpdateSettings::kDownloadPreferencePolicyValue); 792 GoogleUpdateSettings::kDownloadPreferencePolicyValue);
800 } 793 }
801 policy_key.Close(); 794 policy_key.Close();
802 795
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after
1176 StatsState::TRUE_SETTING), 1169 StatsState::TRUE_SETTING),
1177 StatsState(StatsState::kSystemLevel, 1170 StatsState(StatsState::kSystemLevel,
1178 StatsState::TRUE_SETTING, 1171 StatsState::TRUE_SETTING,
1179 StatsState::NO_SETTING), 1172 StatsState::NO_SETTING),
1180 StatsState(StatsState::kSystemLevel, 1173 StatsState(StatsState::kSystemLevel,
1181 StatsState::TRUE_SETTING, 1174 StatsState::TRUE_SETTING,
1182 StatsState::FALSE_SETTING), 1175 StatsState::FALSE_SETTING),
1183 StatsState(StatsState::kSystemLevel, 1176 StatsState(StatsState::kSystemLevel,
1184 StatsState::TRUE_SETTING, 1177 StatsState::TRUE_SETTING,
1185 StatsState::TRUE_SETTING))); 1178 StatsState::TRUE_SETTING)));
OLDNEW
« no previous file with comments | « chrome/installer/util/google_update_settings.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698