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

Unified Diff: chrome/browser/password_manager/native_backend_kwallet_x_unittest.cc

Issue 347583004: PasswordStore refactoring. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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/password_manager/native_backend_kwallet_x_unittest.cc
diff --git a/chrome/browser/password_manager/native_backend_kwallet_x_unittest.cc b/chrome/browser/password_manager/native_backend_kwallet_x_unittest.cc
index 1f1713d7cb1c4bacd7d9e1b85d00bc4e8911ad34..82315671a6c90f385b922850c36ef06b35a4d817 100644
--- a/chrome/browser/password_manager/native_backend_kwallet_x_unittest.cc
+++ b/chrome/browser/password_manager/native_backend_kwallet_x_unittest.cc
@@ -255,6 +255,14 @@ class NativeBackendKWalletTest : public NativeBackendKWalletTestBase {
void CheckPasswordForms(const std::string& folder,
const ExpectationArray& sorted_expected);
+ enum RemoveBetweenMethod {
+ CREATED,
+ SYNCED,
+ };
+
+ // Tests RemoveLoginsCreatedBetween or RemoveLoginsSyncedBetween.
+ void TestRemoveLoginsBetween(RemoveBetweenMethod date_to_test);
+
base::MessageLoopForUI message_loop_;
content::TestBrowserThread ui_thread_;
content::TestBrowserThread db_thread_;
@@ -324,6 +332,82 @@ void NativeBackendKWalletTest::TearDown() {
db_thread_.Stop();
}
+void NativeBackendKWalletTest::TestRemoveLoginsBetween(
+ RemoveBetweenMethod date_to_test) {
+ NativeBackendKWalletStub backend(42);
+ EXPECT_TRUE(backend.InitWithBus(mock_session_bus_));
+
+ form_google_.date_synced = base::Time();
+ form_isc_.date_synced = base::Time();
+ form_google_.date_created = base::Time();
+ form_isc_.date_created = base::Time();
+ base::Time now = base::Time::Now();
+ base::Time next_day = now + base::TimeDelta::FromDays(1);
+ if (date_to_test == CREATED) {
+ // crbug/374132. Remove the next line once it's fixed.
+ next_day = base::Time::FromTimeT(next_day.ToTimeT());
+ form_google_.date_created = now;
+ form_isc_.date_created = next_day;
+ } else {
+ form_google_.date_synced = now;
+ form_isc_.date_synced = next_day;
+ }
+
+ BrowserThread::PostTask(
+ BrowserThread::DB,
+ FROM_HERE,
+ base::Bind(base::IgnoreResult(&NativeBackendKWalletStub::AddLogin),
+ base::Unretained(&backend),
+ form_google_));
+ BrowserThread::PostTask(
+ BrowserThread::DB,
+ FROM_HERE,
+ base::Bind(base::IgnoreResult(&NativeBackendKWalletStub::AddLogin),
+ base::Unretained(&backend),
+ form_isc_));
+
+ PasswordStoreChangeList expected_changes;
+ expected_changes.push_back(
+ PasswordStoreChange(PasswordStoreChange::REMOVE, form_google_));
+ PasswordStoreChangeList changes;
+ bool (NativeBackendKWallet::*method)(
+ base::Time, base::Time, password_manager::PasswordStoreChangeList*) =
+ date_to_test == CREATED
+ ? &NativeBackendKWalletStub::RemoveLoginsCreatedBetween
+ : &NativeBackendKWalletStub::RemoveLoginsSyncedBetween;
+ BrowserThread::PostTaskAndReplyWithResult(
+ BrowserThread::DB,
+ FROM_HERE,
+ base::Bind(
+ method, base::Unretained(&backend), base::Time(), next_day, &changes),
+ base::Bind(&NativeBackendKWalletTest::CheckPasswordChangesWithResult,
+ &expected_changes,
+ &changes));
+ RunDBThread();
+
+ std::vector<const PasswordForm*> forms;
+ forms.push_back(&form_isc_);
+ ExpectationArray expected;
+ expected.push_back(make_pair(std::string(form_isc_.signon_realm), forms));
+ CheckPasswordForms("Chrome Form Data (42)", expected);
+
+ // Remove form_isc_.
+ expected_changes.clear();
+ expected_changes.push_back(
+ PasswordStoreChange(PasswordStoreChange::REMOVE, form_isc_));
+ BrowserThread::PostTaskAndReplyWithResult(
+ BrowserThread::DB,
+ FROM_HERE,
+ base::Bind(
+ method, base::Unretained(&backend), next_day, base::Time(), &changes),
+ base::Bind(&NativeBackendKWalletTest::CheckPasswordChangesWithResult,
+ &expected_changes,
+ &changes));
+ RunDBThread();
+
+ CheckPasswordForms("Chrome Form Data (42)", ExpectationArray());
+}
+
dbus::Response* NativeBackendKWalletTest::KLauncherMethodCall(
dbus::MethodCall* method_call, testing::Unused) {
EXPECT_EQ("org.kde.KLauncher", method_call->GetInterface());
@@ -807,71 +891,12 @@ TEST_F(NativeBackendKWalletTest, ListLoginsAppends) {
CheckPasswordForms("Chrome Form Data (42)", expected);
}
-TEST_F(NativeBackendKWalletTest, RemoveLoginsSyncedBetween) {
- NativeBackendKWalletStub backend(42);
- EXPECT_TRUE(backend.InitWithBus(mock_session_bus_));
-
- base::Time now = base::Time::Now();
- base::Time next_day = now + base::TimeDelta::FromDays(1);
- form_google_.date_synced = now;
- form_isc_.date_synced = next_day;
- form_google_.date_created = base::Time();
- form_isc_.date_created = base::Time();
-
- BrowserThread::PostTask(
- BrowserThread::DB,
- FROM_HERE,
- base::Bind(base::IgnoreResult(&NativeBackendKWalletStub::AddLogin),
- base::Unretained(&backend),
- form_google_));
- BrowserThread::PostTask(
- BrowserThread::DB,
- FROM_HERE,
- base::Bind(base::IgnoreResult(&NativeBackendKWalletStub::AddLogin),
- base::Unretained(&backend),
- form_isc_));
-
- PasswordStoreChangeList expected_changes;
- expected_changes.push_back(
- PasswordStoreChange(PasswordStoreChange::REMOVE, form_google_));
- PasswordStoreChangeList changes;
- BrowserThread::PostTaskAndReplyWithResult(
- BrowserThread::DB,
- FROM_HERE,
- base::Bind(&NativeBackendKWalletStub::RemoveLoginsSyncedBetween,
- base::Unretained(&backend),
- base::Time(),
- next_day,
- &changes),
- base::Bind(&NativeBackendKWalletTest::CheckPasswordChangesWithResult,
- &expected_changes,
- &changes));
- RunDBThread();
-
- std::vector<const PasswordForm*> forms;
- forms.push_back(&form_isc_);
- ExpectationArray expected;
- expected.push_back(make_pair(std::string(form_isc_.signon_realm), forms));
- CheckPasswordForms("Chrome Form Data (42)", expected);
-
- // Remove form_isc_.
- expected_changes.clear();
- expected_changes.push_back(
- PasswordStoreChange(PasswordStoreChange::REMOVE, form_isc_));
- BrowserThread::PostTaskAndReplyWithResult(
- BrowserThread::DB,
- FROM_HERE,
- base::Bind(&NativeBackendKWalletStub::RemoveLoginsSyncedBetween,
- base::Unretained(&backend),
- next_day,
- base::Time(),
- &changes),
- base::Bind(&NativeBackendKWalletTest::CheckPasswordChangesWithResult,
- &expected_changes,
- &changes));
- RunDBThread();
+TEST_F(NativeBackendKWalletTest, RemoveLoginsCreatedBetween) {
+ TestRemoveLoginsBetween(CREATED);
+}
- CheckPasswordForms("Chrome Form Data (42)", ExpectationArray());
+TEST_F(NativeBackendKWalletTest, RemoveLoginsSyncedBetween) {
+ TestRemoveLoginsBetween(SYNCED);
}
// TODO(mdm): add more basic tests here at some point.
« no previous file with comments | « chrome/browser/password_manager/native_backend_kwallet_x.cc ('k') | chrome/browser/password_manager/password_store_mac.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698