Index: components/password_manager/core/browser/affiliated_match_helper_unittest.cc |
diff --git a/components/password_manager/core/browser/affiliated_match_helper_unittest.cc b/components/password_manager/core/browser/affiliated_match_helper_unittest.cc |
index acca937aeed7e45b9f30a8dc0b1f5bf49314b599..80e169e3ceadd21f70047a237a01b0d1c1cabc86 100644 |
--- a/components/password_manager/core/browser/affiliated_match_helper_unittest.cc |
+++ b/components/password_manager/core/browser/affiliated_match_helper_unittest.cc |
@@ -15,7 +15,7 @@ |
#include "base/message_loop/message_loop.h" |
#include "base/run_loop.h" |
#include "base/strings/utf_string_conversions.h" |
-#include "base/test/test_simple_task_runner.h" |
+#include "base/test/scoped_mock_time_message_loop_task_runner.h" |
#include "base/threading/thread_task_runner_handle.h" |
#include "components/password_manager/core/browser/affiliation_service.h" |
#include "components/password_manager/core/browser/affiliation_utils.h" |
@@ -166,37 +166,40 @@ PasswordStore::FormDigest GetTestObservedWebForm(const char* signon_realm, |
class AffiliatedMatchHelperTest : public testing::Test { |
public: |
AffiliatedMatchHelperTest() |
- : waiting_task_runner_(new base::TestSimpleTaskRunner), |
- expecting_result_callback_(false), |
- mock_affiliation_service_(nullptr) {} |
+ : expecting_result_callback_(false), mock_affiliation_service_(nullptr) {} |
~AffiliatedMatchHelperTest() override {} |
protected: |
void RunDeferredInitialization() { |
- base::TimeDelta expected_init_delay = base::TimeDelta::FromSeconds( |
- AffiliatedMatchHelper::kInitializationDelayOnStartupInSeconds); |
- ASSERT_TRUE(waiting_task_runner()->HasPendingTask()); |
- ASSERT_EQ(expected_init_delay, |
- waiting_task_runner()->NextPendingTaskDelay()); |
- waiting_task_runner()->RunUntilIdle(); |
- base::RunLoop().RunUntilIdle(); |
+ mock_time_task_runner_->RunUntilIdle(); |
+ ASSERT_EQ(AffiliatedMatchHelper::kInitializationDelayOnStartup, |
+ mock_time_task_runner_->NextPendingTaskDelay()); |
+ mock_time_task_runner_->FastForwardBy( |
+ AffiliatedMatchHelper::kInitializationDelayOnStartup); |
+ } |
+ |
+ void RunUntilIdle() { |
+ // TODO(gab): Add support for base::RunLoop().RunUntilIdle() in scope of |
+ // ScopedMockTimeMessageLoopTaskRunner and use it instead of this helper |
+ // method. |
+ mock_time_task_runner_->RunUntilIdle(); |
} |
void AddLogin(const autofill::PasswordForm& form) { |
password_store_->AddLogin(form); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
} |
void UpdateLoginWithPrimaryKey( |
const autofill::PasswordForm& new_form, |
const autofill::PasswordForm& old_primary_key) { |
password_store_->UpdateLoginWithPrimaryKey(new_form, old_primary_key); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
} |
void RemoveLogin(const autofill::PasswordForm& form) { |
password_store_->RemoveLogin(form); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
} |
void AddAndroidAndNonAndroidTestLogins() { |
@@ -256,7 +259,7 @@ class AffiliatedMatchHelperTest : public testing::Test { |
observed_form, |
base::Bind(&AffiliatedMatchHelperTest::OnAffiliatedRealmsCallback, |
base::Unretained(this))); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
EXPECT_FALSE(expecting_result_callback_); |
return last_result_realms_; |
} |
@@ -268,7 +271,7 @@ class AffiliatedMatchHelperTest : public testing::Test { |
android_form, |
base::Bind(&AffiliatedMatchHelperTest::OnAffiliatedRealmsCallback, |
base::Unretained(this))); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
EXPECT_FALSE(expecting_result_callback_); |
return last_result_realms_; |
} |
@@ -281,17 +284,13 @@ class AffiliatedMatchHelperTest : public testing::Test { |
std::move(forms), |
base::Bind(&AffiliatedMatchHelperTest::OnFormsCallback, |
base::Unretained(this))); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
EXPECT_FALSE(expecting_result_callback_); |
return std::move(last_result_forms_); |
} |
void DestroyMatchHelper() { match_helper_.reset(); } |
- base::TestSimpleTaskRunner* waiting_task_runner() { |
- return waiting_task_runner_.get(); |
- } |
- |
TestPasswordStore* password_store() { return password_store_.get(); } |
MockAffiliationService* mock_affiliation_service() { |
@@ -325,7 +324,6 @@ class AffiliatedMatchHelperTest : public testing::Test { |
match_helper_.reset( |
new AffiliatedMatchHelper(password_store_.get(), std::move(service))); |
- match_helper_->SetTaskRunnerUsedForWaitingForTesting(waiting_task_runner_); |
} |
void TearDown() override { |
@@ -334,8 +332,9 @@ class AffiliatedMatchHelperTest : public testing::Test { |
password_store_ = nullptr; |
} |
- scoped_refptr<base::TestSimpleTaskRunner> waiting_task_runner_; |
base::MessageLoop message_loop_; |
+ base::ScopedMockTimeMessageLoopTaskRunner mock_time_task_runner_; |
+ |
std::vector<std::string> last_result_realms_; |
std::vector<std::unique_ptr<autofill::PasswordForm>> last_result_forms_; |
bool expecting_result_callback_; |
@@ -504,7 +503,7 @@ TEST_F(AffiliatedMatchHelperTest, |
AddAndroidAndNonAndroidTestLogins(); |
match_helper()->Initialize(); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
ExpectPrefetchForAndroidTestLogins(); |
ASSERT_NO_FATAL_FAILURE(RunDeferredInitialization()); |
@@ -516,7 +515,7 @@ TEST_F(AffiliatedMatchHelperTest, |
TEST_F(AffiliatedMatchHelperTest, |
PrefetchAffiliationsForAndroidCredentialsAddedInInitializationDelay) { |
match_helper()->Initialize(); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
AddAndroidAndNonAndroidTestLogins(); |
@@ -594,7 +593,7 @@ TEST_F(AffiliatedMatchHelperTest, |
AddLogin(android_form2); |
match_helper()->Initialize(); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
// Store one credential between initialization and deferred initialization. |
autofill::PasswordForm android_form3(android_form); |
@@ -623,7 +622,7 @@ TEST_F(AffiliatedMatchHelperTest, |
TEST_F(AffiliatedMatchHelperTest, DestroyBeforeDeferredInitialization) { |
match_helper()->Initialize(); |
- base::RunLoop().RunUntilIdle(); |
+ RunUntilIdle(); |
DestroyMatchHelper(); |
ASSERT_NO_FATAL_FAILURE(RunDeferredInitialization()); |
} |