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

Unified Diff: chrome/browser/ui/cocoa/clear_browsing_data_controller_unittest.mm

Issue 5964008: Add UI to the Clear Browsing Data dialog to remove Flash LSO data. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review Created 9 years, 12 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 side-by-side diff with in-line comments
Download patch
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) {
« no previous file with comments | « chrome/browser/ui/cocoa/clear_browsing_data_controller.mm ('k') | chrome/browser/ui/views/clear_browsing_data.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698