| Index: chrome/browser/ui/cocoa/clear_browsing_data_controller_unittest.mm
|
| diff --git a/chrome/browser/ui/cocoa/clear_browsing_data_controller_unittest.mm b/chrome/browser/ui/cocoa/clear_browsing_data_controller_unittest.mm
|
| index d5f238a6d180af5fdef1d91a142e05b062672a4a..596d98117f77b5e344e8197c7d1ed7bf4bc73885 100644
|
| --- a/chrome/browser/ui/cocoa/clear_browsing_data_controller_unittest.mm
|
| +++ b/chrome/browser/ui/cocoa/clear_browsing_data_controller_unittest.mm
|
| @@ -7,11 +7,15 @@
|
| #include "base/scoped_nsobject.h"
|
| #include "chrome/browser/browsing_data_remover.h"
|
| #include "chrome/browser/prefs/pref_service.h"
|
| +#include "chrome/browser/prefs/pref_service_mock_builder.h"
|
| +#include "chrome/browser/prefs/testing_pref_store.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| +#include "chrome/browser/ui/browser.h"
|
| #include "chrome/browser/ui/cocoa/browser_test_helper.h"
|
| #import "chrome/browser/ui/cocoa/clear_browsing_data_controller.h"
|
| #import "chrome/browser/ui/cocoa/cocoa_test_helper.h"
|
| #include "chrome/common/pref_names.h"
|
| +#include "chrome/test/testing_browser_process.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| #include "testing/platform_test.h"
|
| #import "third_party/ocmock/OCMock/OCMock.h"
|
| @@ -22,6 +26,7 @@ class ClearBrowsingDataControllerTest : public CocoaTest {
|
| public:
|
| virtual void SetUp() {
|
| CocoaTest::SetUp();
|
| +
|
| // Set up some interesting prefs:
|
| PrefService* prefs = helper_.profile()->GetPrefs();
|
| prefs->SetBoolean(prefs::kDeleteBrowsingHistory, true);
|
| @@ -30,6 +35,7 @@ class ClearBrowsingDataControllerTest : public CocoaTest {
|
| prefs->SetBoolean(prefs::kDeleteCookies, false);
|
| prefs->SetBoolean(prefs::kDeletePasswords, true);
|
| prefs->SetBoolean(prefs::kDeleteFormData, false);
|
| + prefs->SetBoolean(prefs::kDeleteLSOData, true);
|
| prefs->SetInteger(prefs::kDeleteTimePeriod,
|
| BrowsingDataRemover::FOUR_WEEKS);
|
| controller_ =
|
| @@ -37,6 +43,8 @@ class ClearBrowsingDataControllerTest : public CocoaTest {
|
| }
|
|
|
| virtual void TearDown() {
|
| + MessageLoop::current()->RunAllPending();
|
| +
|
| [controller_ closeDialog];
|
| CocoaTest::TearDown();
|
| }
|
| @@ -53,15 +61,37 @@ TEST_F(ClearBrowsingDataControllerTest, InitialState) {
|
| EXPECT_FALSE([controller_ deleteCookies]);
|
| EXPECT_TRUE([controller_ clearSavedPasswords]);
|
| EXPECT_FALSE([controller_ clearFormData]);
|
| + EXPECT_TRUE([controller_ clearLSOData]);
|
| EXPECT_EQ(BrowsingDataRemover::FOUR_WEEKS,
|
| [controller_ timePeriod]);
|
| }
|
|
|
| +TEST_F(ClearBrowsingDataControllerTest, ClearLSOData) {
|
| + PrefService* prefs = helper_.profile()->GetPrefs();
|
| +
|
| + // Disable clearing LSO data.
|
| + prefs->SetBoolean(prefs::kClearPluginLSODataEnabled, false);
|
| + EXPECT_TRUE([controller_ clearLSOData]);
|
| + EXPECT_FALSE([controller_ clearLSODataEnabled]);
|
| + EXPECT_FALSE([controller_ clearLSODataChecked]);
|
| +
|
| + // Enabling it again should restore the old value of the checkbox.
|
| + prefs->SetBoolean(prefs::kClearPluginLSODataEnabled, true);
|
| + EXPECT_TRUE([controller_ clearLSODataEnabled]);
|
| + EXPECT_TRUE([controller_ clearLSODataChecked]);
|
| +
|
| + // Unchecking the checkbox should set the preference to false.
|
| + [controller_ setClearLSODataChecked:NO];
|
| + [controller_ persistToPrefs];
|
| + EXPECT_FALSE(prefs->GetBoolean(prefs::kDeleteLSOData));
|
| +}
|
| +
|
| TEST_F(ClearBrowsingDataControllerTest, InitialRemoveMask) {
|
| // Check that the remove-mask matches the initial properties:
|
| EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY |
|
| BrowsingDataRemover::REMOVE_CACHE |
|
| - BrowsingDataRemover::REMOVE_PASSWORDS,
|
| + BrowsingDataRemover::REMOVE_PASSWORDS |
|
| + BrowsingDataRemover::REMOVE_LSO_DATA,
|
| [controller_ removeMask]);
|
| }
|
|
|
| @@ -73,6 +103,7 @@ TEST_F(ClearBrowsingDataControllerTest, ModifiedRemoveMask) {
|
| [controller_ setDeleteCookies:true];
|
| [controller_ setClearSavedPasswords:false];
|
| [controller_ setClearFormData:true];
|
| + [controller_ setClearLSOData:false];
|
|
|
| EXPECT_EQ(BrowsingDataRemover::REMOVE_DOWNLOADS |
|
| BrowsingDataRemover::REMOVE_COOKIES |
|
| @@ -88,9 +119,9 @@ TEST_F(ClearBrowsingDataControllerTest, EmptyRemoveMask) {
|
| [controller_ setDeleteCookies:false];
|
| [controller_ setClearSavedPasswords:false];
|
| [controller_ setClearFormData:false];
|
| + [controller_ setClearLSOData:false];
|
|
|
| - EXPECT_EQ(0,
|
| - [controller_ removeMask]);
|
| + EXPECT_EQ(0, [controller_ removeMask]);
|
| }
|
|
|
| TEST_F(ClearBrowsingDataControllerTest, PersistToPrefs) {
|
|
|