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

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

Issue 2705113005: Update AutoImport to import nothing by default (in absence of policy and master_prefs). (Closed)
Patch Set: update comment in chrome_browser_main.cc Created 3 years, 9 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
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 // Unit tests for master preferences related methods. 5 // Unit tests for master preferences related methods.
6 6
7 #include "chrome/installer/util/master_preferences.h" 7 #include "chrome/installer/util/master_preferences.h"
8 8
9 #include <stddef.h> 9 #include <stddef.h>
10 10
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 EXPECT_TRUE(base::DeleteFile(prefs_file(), false)); 68 EXPECT_TRUE(base::DeleteFile(prefs_file(), false));
69 installer::MasterPreferences prefs(prefs_file()); 69 installer::MasterPreferences prefs(prefs_file());
70 EXPECT_FALSE(prefs.read_from_file()); 70 EXPECT_FALSE(prefs.read_from_file());
71 } 71 }
72 72
73 TEST_F(MasterPreferencesTest, ParseDistroParams) { 73 TEST_F(MasterPreferencesTest, ParseDistroParams) {
74 const char text[] = 74 const char text[] =
75 "{ \n" 75 "{ \n"
76 " \"distribution\": { \n" 76 " \"distribution\": { \n"
77 " \"show_welcome_page\": true,\n" 77 " \"show_welcome_page\": true,\n"
78 " \"import_search_engine\": true,\n"
79 " \"import_history\": true,\n"
80 " \"import_bookmarks\": true,\n"
81 " \"import_bookmarks_from_file\": \"c:\\\\foo\",\n" 78 " \"import_bookmarks_from_file\": \"c:\\\\foo\",\n"
82 " \"import_home_page\": true,\n"
83 " \"welcome_page_on_os_upgrade_enabled\": true,\n" 79 " \"welcome_page_on_os_upgrade_enabled\": true,\n"
84 " \"do_not_create_any_shortcuts\": true,\n" 80 " \"do_not_create_any_shortcuts\": true,\n"
85 " \"do_not_create_desktop_shortcut\": true,\n" 81 " \"do_not_create_desktop_shortcut\": true,\n"
86 " \"do_not_create_quick_launch_shortcut\": true,\n" 82 " \"do_not_create_quick_launch_shortcut\": true,\n"
87 " \"do_not_create_taskbar_shortcut\": true,\n" 83 " \"do_not_create_taskbar_shortcut\": true,\n"
88 " \"do_not_launch_chrome\": true,\n" 84 " \"do_not_launch_chrome\": true,\n"
89 " \"make_chrome_default\": true,\n" 85 " \"make_chrome_default\": true,\n"
90 " \"make_chrome_default_for_user\": true,\n" 86 " \"make_chrome_default_for_user\": true,\n"
91 " \"system_level\": true,\n" 87 " \"system_level\": true,\n"
92 " \"verbose_logging\": true,\n" 88 " \"verbose_logging\": true,\n"
93 " \"require_eula\": true\n" 89 " \"require_eula\": true\n"
94 " },\n" 90 " },\n"
95 " \"blah\": {\n" 91 " \"blah\": {\n"
96 " \"import_history\": false\n" 92 " \"show_welcome_page\": false\n"
97 " }\n" 93 " }\n"
98 "} \n"; 94 "} \n";
99 95
100 EXPECT_TRUE(base::WriteFile(prefs_file(), text, 96 EXPECT_TRUE(base::WriteFile(prefs_file(), text,
101 static_cast<int>(strlen(text)))); 97 static_cast<int>(strlen(text))));
102 installer::MasterPreferences prefs(prefs_file()); 98 installer::MasterPreferences prefs(prefs_file());
103 EXPECT_TRUE(prefs.read_from_file()); 99 EXPECT_TRUE(prefs.read_from_file());
104 100
105 const char* const expected_true[] = { 101 const char* const expected_true[] = {
106 installer::master_preferences::kDistroImportSearchPref,
107 installer::master_preferences::kDistroImportHistoryPref,
108 installer::master_preferences::kDistroImportBookmarksPref,
109 installer::master_preferences::kDistroImportHomePagePref,
110 installer::master_preferences::kDistroWelcomePageOnOSUpgradeEnabled, 102 installer::master_preferences::kDistroWelcomePageOnOSUpgradeEnabled,
111 installer::master_preferences::kDoNotCreateAnyShortcuts, 103 installer::master_preferences::kDoNotCreateAnyShortcuts,
112 installer::master_preferences::kDoNotCreateDesktopShortcut, 104 installer::master_preferences::kDoNotCreateDesktopShortcut,
113 installer::master_preferences::kDoNotCreateQuickLaunchShortcut, 105 installer::master_preferences::kDoNotCreateQuickLaunchShortcut,
114 installer::master_preferences::kDoNotCreateTaskbarShortcut, 106 installer::master_preferences::kDoNotCreateTaskbarShortcut,
115 installer::master_preferences::kDoNotLaunchChrome, 107 installer::master_preferences::kDoNotLaunchChrome,
116 installer::master_preferences::kMakeChromeDefault, 108 installer::master_preferences::kMakeChromeDefault,
117 installer::master_preferences::kMakeChromeDefaultForUser, 109 installer::master_preferences::kMakeChromeDefaultForUser,
118 installer::master_preferences::kSystemLevel, 110 installer::master_preferences::kSystemLevel,
119 installer::master_preferences::kVerboseLogging, 111 installer::master_preferences::kVerboseLogging,
120 installer::master_preferences::kRequireEula, 112 installer::master_preferences::kRequireEula,
121 }; 113 };
122 114
123 for (size_t i = 0; i < arraysize(expected_true); ++i) { 115 for (size_t i = 0; i < arraysize(expected_true); ++i) {
124 bool value = false; 116 bool value = false;
125 EXPECT_TRUE(prefs.GetBool(expected_true[i], &value)); 117 EXPECT_TRUE(prefs.GetBool(expected_true[i], &value));
126 EXPECT_TRUE(value) << expected_true[i]; 118 EXPECT_TRUE(value) << expected_true[i];
127 } 119 }
128 120
129 std::string str_value; 121 std::string str_value;
130 EXPECT_TRUE(prefs.GetString( 122 EXPECT_TRUE(prefs.GetString(
131 installer::master_preferences::kDistroImportBookmarksFromFilePref, 123 installer::master_preferences::kDistroImportBookmarksFromFilePref,
132 &str_value)); 124 &str_value));
133 EXPECT_STREQ("c:\\foo", str_value.c_str()); 125 EXPECT_STREQ("c:\\foo", str_value.c_str());
134 } 126 }
135 127
136 TEST_F(MasterPreferencesTest, ParseMissingDistroParams) { 128 TEST_F(MasterPreferencesTest, ParseMissingDistroParams) {
137 const char text[] = 129 const char text[] =
138 "{ \n" 130 "{ \n"
139 " \"distribution\": { \n" 131 " \"distribution\": { \n"
140 " \"import_search_engine\": true,\n" 132 " \"import_bookmarks_from_file\": \"\",\n"
141 " \"import_bookmarks\": false,\n" 133 " \"do_not_create_desktop_shortcut\": true,\n"
142 " \"import_bookmarks_from_file\": \"\",\n" 134 " \"do_not_create_quick_launch_shortcut\": true,\n"
143 " \"do_not_create_desktop_shortcut\": true,\n" 135 " \"do_not_launch_chrome\": false\n"
144 " \"do_not_create_quick_launch_shortcut\": true,\n" 136 " }\n"
145 " \"do_not_launch_chrome\": true\n" 137 "} \n";
146 " }\n"
147 "} \n";
148 138
149 EXPECT_TRUE(base::WriteFile(prefs_file(), text, 139 EXPECT_TRUE(base::WriteFile(prefs_file(), text,
150 static_cast<int>(strlen(text)))); 140 static_cast<int>(strlen(text))));
151 installer::MasterPreferences prefs(prefs_file()); 141 installer::MasterPreferences prefs(prefs_file());
152 EXPECT_TRUE(prefs.read_from_file()); 142 EXPECT_TRUE(prefs.read_from_file());
153 143
154 ExpectedBooleans expected_bool[] = { 144 ExpectedBooleans expected_bool[] = {
155 { installer::master_preferences::kDistroImportSearchPref, true }, 145 {installer::master_preferences::kDoNotCreateDesktopShortcut, true},
156 { installer::master_preferences::kDistroImportBookmarksPref, false }, 146 {installer::master_preferences::kDoNotCreateQuickLaunchShortcut, true},
157 { installer::master_preferences::kDoNotCreateDesktopShortcut, true }, 147 {installer::master_preferences::kDoNotLaunchChrome, false},
158 { installer::master_preferences::kDoNotCreateQuickLaunchShortcut, true },
159 { installer::master_preferences::kDoNotLaunchChrome, true },
160 }; 148 };
161 149
162 bool value = false; 150 bool value = false;
163 for (size_t i = 0; i < arraysize(expected_bool); ++i) { 151 for (size_t i = 0; i < arraysize(expected_bool); ++i) {
164 EXPECT_TRUE(prefs.GetBool(expected_bool[i].name, &value)); 152 EXPECT_TRUE(prefs.GetBool(expected_bool[i].name, &value));
165 EXPECT_EQ(value, expected_bool[i].expected_value) << expected_bool[i].name; 153 EXPECT_EQ(value, expected_bool[i].expected_value) << expected_bool[i].name;
166 } 154 }
167 155
168 const char* const missing_bools[] = { 156 const char* const missing_bools[] = {
169 installer::master_preferences::kDistroImportHomePagePref,
170 installer::master_preferences::kDistroWelcomePageOnOSUpgradeEnabled, 157 installer::master_preferences::kDistroWelcomePageOnOSUpgradeEnabled,
171 installer::master_preferences::kDoNotRegisterForUpdateLaunch, 158 installer::master_preferences::kDoNotRegisterForUpdateLaunch,
172 installer::master_preferences::kMakeChromeDefault, 159 installer::master_preferences::kMakeChromeDefault,
173 installer::master_preferences::kMakeChromeDefaultForUser, 160 installer::master_preferences::kMakeChromeDefaultForUser,
174 }; 161 };
175 162
176 for (size_t i = 0; i < arraysize(missing_bools); ++i) { 163 for (size_t i = 0; i < arraysize(missing_bools); ++i) {
177 EXPECT_FALSE(prefs.GetBool(missing_bools[i], &value)) << missing_bools[i]; 164 EXPECT_FALSE(prefs.GetBool(missing_bools[i], &value)) << missing_bools[i];
178 } 165 }
179 166
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 base::CommandLine::FromString(chrome_cmd.str())); 298 base::CommandLine::FromString(chrome_cmd.str()));
312 299
313 installer::MasterPreferences pref_chrome(chrome_install); 300 installer::MasterPreferences pref_chrome(chrome_install);
314 } 301 }
315 302
316 TEST_F(MasterPreferencesTest, EnforceLegacyPreferences) { 303 TEST_F(MasterPreferencesTest, EnforceLegacyPreferences) {
317 static const char kLegacyPrefs[] = 304 static const char kLegacyPrefs[] =
318 "{" 305 "{"
319 " \"distribution\": {" 306 " \"distribution\": {"
320 " \"create_all_shortcuts\": false,\n" 307 " \"create_all_shortcuts\": false,\n"
308 " \"import_bookmarks\": true,\n"
309 " \"import_history\": true,\n"
310 " \"import_home_page\": true,\n"
311 " \"import_search_engine\": true,\n"
321 " \"ping_delay\": 40\n" 312 " \"ping_delay\": 40\n"
322 " }" 313 " }"
323 "}"; 314 "}";
324 315
325 installer::MasterPreferences prefs(kLegacyPrefs); 316 installer::MasterPreferences prefs(kLegacyPrefs);
326 317
327 bool do_not_create_desktop_shortcut = false; 318 bool do_not_create_desktop_shortcut = false;
328 bool do_not_create_quick_launch_shortcut = false; 319 bool do_not_create_quick_launch_shortcut = false;
329 bool do_not_create_taskbar_shortcut = false; 320 bool do_not_create_taskbar_shortcut = false;
330 prefs.GetBool(installer::master_preferences::kDoNotCreateDesktopShortcut, 321 prefs.GetBool(installer::master_preferences::kDoNotCreateDesktopShortcut,
331 &do_not_create_desktop_shortcut); 322 &do_not_create_desktop_shortcut);
332 prefs.GetBool(installer::master_preferences::kDoNotCreateQuickLaunchShortcut, 323 prefs.GetBool(installer::master_preferences::kDoNotCreateQuickLaunchShortcut,
333 &do_not_create_quick_launch_shortcut); 324 &do_not_create_quick_launch_shortcut);
334 prefs.GetBool(installer::master_preferences::kDoNotCreateTaskbarShortcut, 325 prefs.GetBool(installer::master_preferences::kDoNotCreateTaskbarShortcut,
335 &do_not_create_taskbar_shortcut); 326 &do_not_create_taskbar_shortcut);
336 // create_all_shortcuts is a legacy preference that should only enforce 327 // create_all_shortcuts is a legacy preference that should only enforce
337 // do_not_create_desktop_shortcut and do_not_create_quick_launch_shortcut 328 // do_not_create_desktop_shortcut and do_not_create_quick_launch_shortcut
338 // when set to false. 329 // when set to false.
339 EXPECT_TRUE(do_not_create_desktop_shortcut); 330 EXPECT_TRUE(do_not_create_desktop_shortcut);
340 EXPECT_TRUE(do_not_create_quick_launch_shortcut); 331 EXPECT_TRUE(do_not_create_quick_launch_shortcut);
341 EXPECT_FALSE(do_not_create_taskbar_shortcut); 332 EXPECT_FALSE(do_not_create_taskbar_shortcut);
342 333
334 bool actual_value = false;
335 EXPECT_TRUE(prefs.master_dictionary().GetBoolean(prefs::kImportBookmarks,
336 &actual_value));
337 EXPECT_TRUE(actual_value);
338 EXPECT_TRUE(prefs.master_dictionary().GetBoolean(prefs::kImportHistory,
339 &actual_value));
340 EXPECT_TRUE(actual_value);
341 EXPECT_TRUE(prefs.master_dictionary().GetBoolean(prefs::kImportHomepage,
342 &actual_value));
343 EXPECT_TRUE(actual_value);
344 EXPECT_TRUE(prefs.master_dictionary().GetBoolean(prefs::kImportSearchEngine,
345 &actual_value));
346 EXPECT_TRUE(actual_value);
347
343 #if BUILDFLAG(ENABLE_RLZ) 348 #if BUILDFLAG(ENABLE_RLZ)
344 int rlz_ping_delay = 0; 349 int rlz_ping_delay = 0;
345 EXPECT_TRUE(prefs.master_dictionary().GetInteger(prefs::kRlzPingDelaySeconds, 350 EXPECT_TRUE(prefs.master_dictionary().GetInteger(prefs::kRlzPingDelaySeconds,
346 &rlz_ping_delay)); 351 &rlz_ping_delay));
347 EXPECT_EQ(40, rlz_ping_delay); 352 EXPECT_EQ(40, rlz_ping_delay);
348 #endif // BUILDFLAG(ENABLE_RLZ) 353 #endif // BUILDFLAG(ENABLE_RLZ)
349 } 354 }
350 355
351 TEST_F(MasterPreferencesTest, DontEnforceLegacyCreateAllShortcutsTrue) { 356 TEST_F(MasterPreferencesTest, DontEnforceLegacyCreateAllShortcutsTrue) {
352 static const char kCreateAllShortcutsFalsePrefs[] = 357 static const char kCreateAllShortcutsFalsePrefs[] =
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
429 } 434 }
430 { 435 {
431 ScopedGoogleUpdateIsMachine env_setter("2"); 436 ScopedGoogleUpdateIsMachine env_setter("2");
432 installer::MasterPreferences prefs( 437 installer::MasterPreferences prefs(
433 base::CommandLine(base::FilePath(FILE_PATH_LITERAL("setup.exe")))); 438 base::CommandLine(base::FilePath(FILE_PATH_LITERAL("setup.exe"))));
434 bool value = false; 439 bool value = false;
435 prefs.GetBool(installer::master_preferences::kSystemLevel, &value); 440 prefs.GetBool(installer::master_preferences::kSystemLevel, &value);
436 EXPECT_FALSE(value); 441 EXPECT_FALSE(value);
437 } 442 }
438 } 443 }
OLDNEW
« no previous file with comments | « chrome/installer/util/master_preferences_constants.cc ('k') | testing/variations/fieldtrial_testing_config.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698