| 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 <string> | 5 #include <string> |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
| 9 #include "base/files/scoped_temp_dir.h" | 9 #include "base/files/scoped_temp_dir.h" |
| 10 #include "base/path_service.h" | 10 #include "base/path_service.h" |
| (...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 366 explicit UnittestGuestProfileManager(const base::FilePath& user_data_dir) | 366 explicit UnittestGuestProfileManager(const base::FilePath& user_data_dir) |
| 367 : UnittestProfileManager(user_data_dir) {} | 367 : UnittestProfileManager(user_data_dir) {} |
| 368 | 368 |
| 369 protected: | 369 protected: |
| 370 virtual Profile* CreateProfileHelper( | 370 virtual Profile* CreateProfileHelper( |
| 371 const base::FilePath& file_path) OVERRIDE { | 371 const base::FilePath& file_path) OVERRIDE { |
| 372 TestingProfile::Builder builder; | 372 TestingProfile::Builder builder; |
| 373 builder.SetGuestSession(); | 373 builder.SetGuestSession(); |
| 374 builder.SetPath(file_path); | 374 builder.SetPath(file_path); |
| 375 TestingProfile* testing_profile = builder.Build().release(); | 375 TestingProfile* testing_profile = builder.Build().release(); |
| 376 | |
| 377 TestingProfile::Builder incognito_builder; | |
| 378 incognito_builder.SetIncognito(); | |
| 379 incognito_builder.SetGuestSession(); | |
| 380 incognito_builder.SetPath(ProfileManager::GetGuestProfilePath()); | |
| 381 testing_profile->SetOffTheRecordProfile( | |
| 382 incognito_builder.Build().PassAs<Profile>()); | |
| 383 | |
| 384 return testing_profile; | 376 return testing_profile; |
| 385 } | 377 } |
| 386 }; | 378 }; |
| 387 | 379 |
| 388 class ProfileManagerGuestTest : public ProfileManagerTest { | 380 class ProfileManagerGuestTest : public ProfileManagerTest { |
| 389 protected: | 381 protected: |
| 390 virtual void SetUp() { | 382 virtual void SetUp() { |
| 391 // Create a new temporary directory, and store the path | 383 // Create a new temporary directory, and store the path |
| 392 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); | 384 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); |
| 393 TestingBrowserProcess::GetGlobal()->SetProfileManager( | 385 TestingBrowserProcess::GetGlobal()->SetProfileManager( |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 531 ProfileManager* profile_manager = g_browser_process->profile_manager(); | 523 ProfileManager* profile_manager = g_browser_process->profile_manager(); |
| 532 ASSERT_TRUE(profile_manager); | 524 ASSERT_TRUE(profile_manager); |
| 533 | 525 |
| 534 Profile* profile = profile_manager->GetLastUsedProfileAllowedByPolicy(); | 526 Profile* profile = profile_manager->GetLastUsedProfileAllowedByPolicy(); |
| 535 ASSERT_TRUE(profile); | 527 ASSERT_TRUE(profile); |
| 536 EXPECT_FALSE(profile->IsOffTheRecord()); | 528 EXPECT_FALSE(profile->IsOffTheRecord()); |
| 537 PrefService* prefs = profile->GetPrefs(); | 529 PrefService* prefs = profile->GetPrefs(); |
| 538 EXPECT_EQ(IncognitoModePrefs::ENABLED, | 530 EXPECT_EQ(IncognitoModePrefs::ENABLED, |
| 539 IncognitoModePrefs::GetAvailability(prefs)); | 531 IncognitoModePrefs::GetAvailability(prefs)); |
| 540 | 532 |
| 541 // Attach an incognito Profile to the TestingProfile. | |
| 542 ASSERT_FALSE(profile->GetOffTheRecordProfile()); | |
| 543 TestingProfile::Builder builder; | |
| 544 builder.SetIncognito(); | |
| 545 scoped_ptr<TestingProfile> incognito_profile = builder.Build(); | |
| 546 EXPECT_TRUE(incognito_profile->IsOffTheRecord()); | |
| 547 TestingProfile* testing_profile = static_cast<TestingProfile*>(profile); | |
| 548 testing_profile->SetOffTheRecordProfile(incognito_profile.PassAs<Profile>()); | |
| 549 ASSERT_TRUE(profile->GetOffTheRecordProfile()); | 533 ASSERT_TRUE(profile->GetOffTheRecordProfile()); |
| 550 | 534 |
| 551 IncognitoModePrefs::SetAvailability(prefs, IncognitoModePrefs::DISABLED); | 535 IncognitoModePrefs::SetAvailability(prefs, IncognitoModePrefs::DISABLED); |
| 552 EXPECT_FALSE( | 536 EXPECT_FALSE( |
| 553 profile_manager->GetLastUsedProfileAllowedByPolicy()->IsOffTheRecord()); | 537 profile_manager->GetLastUsedProfileAllowedByPolicy()->IsOffTheRecord()); |
| 554 | 538 |
| 555 // GetLastUsedProfileAllowedByPolicy() returns the incognito Profile when | 539 // GetLastUsedProfileAllowedByPolicy() returns the incognito Profile when |
| 556 // incognito mode is forced. | 540 // incognito mode is forced. |
| 557 IncognitoModePrefs::SetAvailability(prefs, IncognitoModePrefs::FORCED); | 541 IncognitoModePrefs::SetAvailability(prefs, IncognitoModePrefs::FORCED); |
| 558 EXPECT_TRUE( | 542 EXPECT_TRUE( |
| (...skipping 537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1096 dest_path2.BaseName().MaybeAsASCII()); | 1080 dest_path2.BaseName().MaybeAsASCII()); |
| 1097 profile_manager->ScheduleProfileForDeletion(dest_path2, | 1081 profile_manager->ScheduleProfileForDeletion(dest_path2, |
| 1098 ProfileManager::CreateCallback()); | 1082 ProfileManager::CreateCallback()); |
| 1099 // Spin the message loop so that all the callbacks can finish running. | 1083 // Spin the message loop so that all the callbacks can finish running. |
| 1100 base::RunLoop().RunUntilIdle(); | 1084 base::RunLoop().RunUntilIdle(); |
| 1101 | 1085 |
| 1102 EXPECT_EQ(dest_path3, profile_manager->GetLastUsedProfile()->GetPath()); | 1086 EXPECT_EQ(dest_path3, profile_manager->GetLastUsedProfile()->GetPath()); |
| 1103 EXPECT_EQ(profile_name3, local_state->GetString(prefs::kProfileLastUsed)); | 1087 EXPECT_EQ(profile_name3, local_state->GetString(prefs::kProfileLastUsed)); |
| 1104 } | 1088 } |
| 1105 #endif // !defined(OS_MACOSX) | 1089 #endif // !defined(OS_MACOSX) |
| OLD | NEW |