| 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 <objbase.h> | 5 #include <objbase.h> |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/file_util.h" | 9 #include "base/file_util.h" |
| 10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
| (...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 311 installer::INSTALL_SHORTCUT_CREATE_ALL); | 311 installer::INSTALL_SHORTCUT_CREATE_ALL); |
| 312 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); | 312 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); |
| 313 ASSERT_FALSE(base::PathExists(user_quick_launch_shortcut_)); | 313 ASSERT_FALSE(base::PathExists(user_quick_launch_shortcut_)); |
| 314 base::win::ValidateShortcut(user_start_menu_shortcut_, | 314 base::win::ValidateShortcut(user_start_menu_shortcut_, |
| 315 expected_start_menu_properties_); | 315 expected_start_menu_properties_); |
| 316 } | 316 } |
| 317 | 317 |
| 318 TEST_F(InstallShortcutTest, ReplaceAll) { | 318 TEST_F(InstallShortcutTest, ReplaceAll) { |
| 319 base::win::ShortcutProperties dummy_properties; | 319 base::win::ShortcutProperties dummy_properties; |
| 320 base::FilePath dummy_target; | 320 base::FilePath dummy_target; |
| 321 ASSERT_TRUE( | 321 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); |
| 322 file_util::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); | |
| 323 dummy_properties.set_target(dummy_target); | 322 dummy_properties.set_target(dummy_target); |
| 324 dummy_properties.set_working_dir(fake_user_desktop_.path()); | 323 dummy_properties.set_working_dir(fake_user_desktop_.path()); |
| 325 dummy_properties.set_arguments(L"--dummy --args"); | 324 dummy_properties.set_arguments(L"--dummy --args"); |
| 326 dummy_properties.set_app_id(L"El.Dummiest"); | 325 dummy_properties.set_app_id(L"El.Dummiest"); |
| 327 | 326 |
| 328 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 327 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 329 user_desktop_shortcut_, dummy_properties, | 328 user_desktop_shortcut_, dummy_properties, |
| 330 base::win::SHORTCUT_CREATE_ALWAYS)); | 329 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 331 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 330 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 332 user_quick_launch_shortcut_, dummy_properties, | 331 user_quick_launch_shortcut_, dummy_properties, |
| 333 base::win::SHORTCUT_CREATE_ALWAYS)); | 332 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 334 ASSERT_TRUE(file_util::CreateDirectory(user_start_menu_shortcut_.DirName())); | 333 ASSERT_TRUE(file_util::CreateDirectory(user_start_menu_shortcut_.DirName())); |
| 335 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 334 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 336 user_start_menu_shortcut_, dummy_properties, | 335 user_start_menu_shortcut_, dummy_properties, |
| 337 base::win::SHORTCUT_CREATE_ALWAYS)); | 336 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 338 | 337 |
| 339 installer::CreateOrUpdateShortcuts( | 338 installer::CreateOrUpdateShortcuts( |
| 340 chrome_exe_, *product_, *prefs_, installer::CURRENT_USER, | 339 chrome_exe_, *product_, *prefs_, installer::CURRENT_USER, |
| 341 installer::INSTALL_SHORTCUT_REPLACE_EXISTING); | 340 installer::INSTALL_SHORTCUT_REPLACE_EXISTING); |
| 342 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); | 341 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); |
| 343 base::win::ValidateShortcut(user_quick_launch_shortcut_, | 342 base::win::ValidateShortcut(user_quick_launch_shortcut_, |
| 344 expected_properties_); | 343 expected_properties_); |
| 345 base::win::ValidateShortcut(user_start_menu_shortcut_, | 344 base::win::ValidateShortcut(user_start_menu_shortcut_, |
| 346 expected_start_menu_properties_); | 345 expected_start_menu_properties_); |
| 347 } | 346 } |
| 348 | 347 |
| 349 TEST_F(InstallShortcutTest, ReplaceExisting) { | 348 TEST_F(InstallShortcutTest, ReplaceExisting) { |
| 350 base::win::ShortcutProperties dummy_properties; | 349 base::win::ShortcutProperties dummy_properties; |
| 351 base::FilePath dummy_target; | 350 base::FilePath dummy_target; |
| 352 ASSERT_TRUE( | 351 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); |
| 353 file_util::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); | |
| 354 dummy_properties.set_target(dummy_target); | 352 dummy_properties.set_target(dummy_target); |
| 355 dummy_properties.set_working_dir(fake_user_desktop_.path()); | 353 dummy_properties.set_working_dir(fake_user_desktop_.path()); |
| 356 dummy_properties.set_arguments(L"--dummy --args"); | 354 dummy_properties.set_arguments(L"--dummy --args"); |
| 357 dummy_properties.set_app_id(L"El.Dummiest"); | 355 dummy_properties.set_app_id(L"El.Dummiest"); |
| 358 | 356 |
| 359 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 357 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 360 user_desktop_shortcut_, dummy_properties, | 358 user_desktop_shortcut_, dummy_properties, |
| 361 base::win::SHORTCUT_CREATE_ALWAYS)); | 359 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 362 ASSERT_TRUE(file_util::CreateDirectory(user_start_menu_shortcut_.DirName())); | 360 ASSERT_TRUE(file_util::CreateDirectory(user_start_menu_shortcut_.DirName())); |
| 363 | 361 |
| 364 installer::CreateOrUpdateShortcuts( | 362 installer::CreateOrUpdateShortcuts( |
| 365 chrome_exe_, *product_, *prefs_, installer::CURRENT_USER, | 363 chrome_exe_, *product_, *prefs_, installer::CURRENT_USER, |
| 366 installer::INSTALL_SHORTCUT_REPLACE_EXISTING); | 364 installer::INSTALL_SHORTCUT_REPLACE_EXISTING); |
| 367 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); | 365 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); |
| 368 ASSERT_FALSE(base::PathExists(user_quick_launch_shortcut_)); | 366 ASSERT_FALSE(base::PathExists(user_quick_launch_shortcut_)); |
| 369 ASSERT_FALSE(base::PathExists(user_start_menu_shortcut_)); | 367 ASSERT_FALSE(base::PathExists(user_start_menu_shortcut_)); |
| 370 } | 368 } |
| 371 | 369 |
| 372 TEST_F(InstallShortcutTest, CreateIfNoSystemLevelAllSystemShortcutsExist) { | 370 TEST_F(InstallShortcutTest, CreateIfNoSystemLevelAllSystemShortcutsExist) { |
| 373 base::win::ShortcutProperties dummy_properties; | 371 base::win::ShortcutProperties dummy_properties; |
| 374 base::FilePath dummy_target; | 372 base::FilePath dummy_target; |
| 375 ASSERT_TRUE( | 373 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); |
| 376 file_util::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); | |
| 377 dummy_properties.set_target(dummy_target); | 374 dummy_properties.set_target(dummy_target); |
| 378 | 375 |
| 379 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 376 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 380 system_desktop_shortcut_, dummy_properties, | 377 system_desktop_shortcut_, dummy_properties, |
| 381 base::win::SHORTCUT_CREATE_ALWAYS)); | 378 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 382 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 379 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 383 system_quick_launch_shortcut_, dummy_properties, | 380 system_quick_launch_shortcut_, dummy_properties, |
| 384 base::win::SHORTCUT_CREATE_ALWAYS)); | 381 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 385 ASSERT_TRUE(file_util::CreateDirectory( | 382 ASSERT_TRUE(file_util::CreateDirectory( |
| 386 system_start_menu_shortcut_.DirName())); | 383 system_start_menu_shortcut_.DirName())); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 403 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); | 400 base::win::ValidateShortcut(user_desktop_shortcut_, expected_properties_); |
| 404 base::win::ValidateShortcut(user_quick_launch_shortcut_, | 401 base::win::ValidateShortcut(user_quick_launch_shortcut_, |
| 405 expected_properties_); | 402 expected_properties_); |
| 406 base::win::ValidateShortcut(user_start_menu_shortcut_, | 403 base::win::ValidateShortcut(user_start_menu_shortcut_, |
| 407 expected_start_menu_properties_); | 404 expected_start_menu_properties_); |
| 408 } | 405 } |
| 409 | 406 |
| 410 TEST_F(InstallShortcutTest, CreateIfNoSystemLevelSomeSystemShortcutsExist) { | 407 TEST_F(InstallShortcutTest, CreateIfNoSystemLevelSomeSystemShortcutsExist) { |
| 411 base::win::ShortcutProperties dummy_properties; | 408 base::win::ShortcutProperties dummy_properties; |
| 412 base::FilePath dummy_target; | 409 base::FilePath dummy_target; |
| 413 ASSERT_TRUE( | 410 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); |
| 414 file_util::CreateTemporaryFileInDir(temp_dir_.path(), &dummy_target)); | |
| 415 dummy_properties.set_target(dummy_target); | 411 dummy_properties.set_target(dummy_target); |
| 416 | 412 |
| 417 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( | 413 ASSERT_TRUE(base::win::CreateOrUpdateShortcutLink( |
| 418 system_desktop_shortcut_, dummy_properties, | 414 system_desktop_shortcut_, dummy_properties, |
| 419 base::win::SHORTCUT_CREATE_ALWAYS)); | 415 base::win::SHORTCUT_CREATE_ALWAYS)); |
| 420 | 416 |
| 421 installer::CreateOrUpdateShortcuts( | 417 installer::CreateOrUpdateShortcuts( |
| 422 chrome_exe_, *product_, *prefs_, installer::CURRENT_USER, | 418 chrome_exe_, *product_, *prefs_, installer::CURRENT_USER, |
| 423 installer::INSTALL_SHORTCUT_CREATE_EACH_IF_NO_SYSTEM_LEVEL); | 419 installer::INSTALL_SHORTCUT_CREATE_EACH_IF_NO_SYSTEM_LEVEL); |
| 424 ASSERT_FALSE(base::PathExists(user_desktop_shortcut_)); | 420 ASSERT_FALSE(base::PathExists(user_desktop_shortcut_)); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 435 installer::EscapeXmlAttributeValueInSingleQuotes(&val); | 431 installer::EscapeXmlAttributeValueInSingleQuotes(&val); |
| 436 ASSERT_STREQ(kExpectedEscapedVal, val.c_str()); | 432 ASSERT_STREQ(kExpectedEscapedVal, val.c_str()); |
| 437 } | 433 } |
| 438 | 434 |
| 439 TEST(EscapeXmlAttributeValueTest, DontEscapeNormalValue) { | 435 TEST(EscapeXmlAttributeValueTest, DontEscapeNormalValue) { |
| 440 string16 val(L"Google Chrome"); | 436 string16 val(L"Google Chrome"); |
| 441 static const wchar_t kExpectedEscapedVal[] = L"Google Chrome"; | 437 static const wchar_t kExpectedEscapedVal[] = L"Google Chrome"; |
| 442 installer::EscapeXmlAttributeValueInSingleQuotes(&val); | 438 installer::EscapeXmlAttributeValueInSingleQuotes(&val); |
| 443 ASSERT_STREQ(kExpectedEscapedVal, val.c_str()); | 439 ASSERT_STREQ(kExpectedEscapedVal, val.c_str()); |
| 444 } | 440 } |
| OLD | NEW |