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

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

Issue 8785006: Badge Windows profile shortcuts with multi-user avatar. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: addressed sail's comment. removed fix for crbug.com/106261 Created 9 years 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 (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <windows.h> 5 #include <windows.h>
6 #include <shellapi.h> 6 #include <shellapi.h>
7 #include <shlobj.h> 7 #include <shlobj.h>
8 8
9 #include <fstream> 9 #include <fstream>
10 10
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
203 default_profile_shortcut_name); 203 default_profile_shortcut_name);
204 FilePath second_profile_shortcut_path = user_desktop_path.Append( 204 FilePath second_profile_shortcut_path = user_desktop_path.Append(
205 second_profile_shortcut_name); 205 second_profile_shortcut_name);
206 206
207 // Test simple creation of a user-level shortcut. 207 // Test simple creation of a user-level shortcut.
208 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist, 208 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist,
209 exe_path.value(), 209 exe_path.value(),
210 description, 210 description,
211 L"", 211 L"",
212 L"", 212 L"",
213 exe_path.value(),
214 dist->GetIconIndex(),
213 ShellUtil::CURRENT_USER, 215 ShellUtil::CURRENT_USER,
214 false, 216 false,
215 true)); 217 true));
216 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 218 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
217 user_shortcut_path.value(), 219 user_shortcut_path.value(),
218 description, 220 description,
219 0)); 221 0));
220 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist, 222 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist,
221 ShellUtil::CURRENT_USER, 223 ShellUtil::CURRENT_USER,
222 false)); 224 false));
223 225
224 // Test simple creation of a system-level shortcut. 226 // Test simple creation of a system-level shortcut.
225 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist, 227 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist,
226 exe_path.value(), 228 exe_path.value(),
227 description, 229 description,
228 L"", 230 L"",
229 L"", 231 L"",
232 exe_path.value(),
233 dist->GetIconIndex(),
230 ShellUtil::SYSTEM_LEVEL, 234 ShellUtil::SYSTEM_LEVEL,
231 false, 235 false,
232 true)); 236 true));
233 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 237 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
234 system_shortcut_path.value(), 238 system_shortcut_path.value(),
235 description, 239 description,
236 0)); 240 0));
237 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist, 241 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist,
238 ShellUtil::SYSTEM_LEVEL, 242 ShellUtil::SYSTEM_LEVEL,
239 false)); 243 false));
240 244
241 // Test creation of a user-level shortcut when a system-level shortcut 245 // Test creation of a user-level shortcut when a system-level shortcut
242 // is already present (should fail). 246 // is already present (should fail).
243 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist, 247 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist,
244 exe_path.value(), 248 exe_path.value(),
245 description, 249 description,
246 L"", 250 L"",
247 L"", 251 L"",
252 exe_path.value(),
253 dist->GetIconIndex(),
248 ShellUtil::SYSTEM_LEVEL, 254 ShellUtil::SYSTEM_LEVEL,
249 false, 255 false,
250 true)); 256 true));
251 EXPECT_FALSE(ShellUtil::CreateChromeDesktopShortcut(dist, 257 EXPECT_FALSE(ShellUtil::CreateChromeDesktopShortcut(dist,
252 exe_path.value(), 258 exe_path.value(),
253 description, 259 description,
254 L"", 260 L"",
255 L"", 261 L"",
262 exe_path.value(),
263 dist->GetIconIndex(),
256 ShellUtil::CURRENT_USER, 264 ShellUtil::CURRENT_USER,
257 false, 265 false,
258 true)); 266 true));
259 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 267 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
260 system_shortcut_path.value(), 268 system_shortcut_path.value(),
261 description, 269 description,
262 0)); 270 0));
263 EXPECT_FALSE(file_util::PathExists(user_shortcut_path)); 271 EXPECT_FALSE(file_util::PathExists(user_shortcut_path));
264 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist, 272 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist,
265 ShellUtil::SYSTEM_LEVEL, 273 ShellUtil::SYSTEM_LEVEL,
266 false)); 274 false));
267 275
268 // Test creation of a system-level shortcut when a user-level shortcut 276 // Test creation of a system-level shortcut when a user-level shortcut
269 // is already present (should succeed). 277 // is already present (should succeed).
270 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist, 278 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist,
271 exe_path.value(), 279 exe_path.value(),
272 description, 280 description,
273 L"", 281 L"",
274 L"", 282 L"",
283 exe_path.value(),
284 dist->GetIconIndex(),
275 ShellUtil::CURRENT_USER, 285 ShellUtil::CURRENT_USER,
276 false, 286 false,
277 true)); 287 true));
278 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist, 288 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(dist,
279 exe_path.value(), 289 exe_path.value(),
280 description, 290 description,
281 L"", 291 L"",
282 L"", 292 L"",
293 exe_path.value(),
294 dist->GetIconIndex(),
283 ShellUtil::SYSTEM_LEVEL, 295 ShellUtil::SYSTEM_LEVEL,
284 false, 296 false,
285 true)); 297 true));
286 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 298 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
287 user_shortcut_path.value(), 299 user_shortcut_path.value(),
288 description, 300 description,
289 0)); 301 0));
290 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 302 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
291 system_shortcut_path.value(), 303 system_shortcut_path.value(),
292 description, 304 description,
293 0)); 305 0));
294 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist, 306 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist,
295 ShellUtil::CURRENT_USER, 307 ShellUtil::CURRENT_USER,
296 false)); 308 false));
297 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist, 309 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcut(dist,
298 ShellUtil::SYSTEM_LEVEL, 310 ShellUtil::SYSTEM_LEVEL,
299 false)); 311 false));
300 312
301 // Test creation of two profile-specific shortcuts (these are always 313 // Test creation of two profile-specific shortcuts (these are always
302 // user-level). 314 // user-level).
303 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut( 315 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(
304 dist, 316 dist,
305 exe_path.value(), 317 exe_path.value(),
306 description, 318 description,
307 default_profile_user_name, 319 default_profile_user_name,
308 L"--profile-directory=\"Default\"", 320 L"--profile-directory=\"Default\"",
321 exe_path.value(),
322 dist->GetIconIndex(),
309 ShellUtil::CURRENT_USER, 323 ShellUtil::CURRENT_USER,
310 false, 324 false,
311 true)); 325 true));
312 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 326 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
313 default_profile_shortcut_path.value(), 327 default_profile_shortcut_path.value(),
314 description, 328 description,
315 0)); 329 0));
316 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut( 330 EXPECT_TRUE(ShellUtil::CreateChromeDesktopShortcut(
317 dist, 331 dist,
318 exe_path.value(), 332 exe_path.value(),
319 description, 333 description,
320 second_profile_user_name, 334 second_profile_user_name,
321 L"--profile-directory=\"Profile 1\"", 335 L"--profile-directory=\"Profile 1\"",
336 exe_path.value(),
337 dist->GetIconIndex(),
322 ShellUtil::CURRENT_USER, 338 ShellUtil::CURRENT_USER,
323 false, 339 false,
324 true)); 340 true));
325 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(), 341 EXPECT_TRUE(VerifyChromeShortcut(exe_path.value(),
326 second_profile_shortcut_path.value(), 342 second_profile_shortcut_path.value(),
327 description, 343 description,
328 0)); 344 0));
329 std::vector<string16> profile_names; 345 std::vector<string16> profile_names;
330 profile_names.push_back(default_profile_shortcut_name); 346 profile_names.push_back(default_profile_shortcut_name);
331 profile_names.push_back(second_profile_shortcut_name); 347 profile_names.push_back(second_profile_shortcut_name);
332 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcutsWithAppendedNames( 348 EXPECT_TRUE(ShellUtil::RemoveChromeDesktopShortcutsWithAppendedNames(
333 profile_names)); 349 profile_names));
334 } 350 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698