Commit fc26c5bc authored by Marc Treib's avatar Marc Treib Committed by Commit Bot

Use syncer::TestSyncService in components/password_manager tests

This replaces a custom subclass of FakeSyncService with the standard
syncer::TestSyncService. It also removed another custom subclass that's
just not used at all.

Bug: 859874
Change-Id: I0ef20ca70a1fdc81649c856c287ed6f1432956f8
Reviewed-on: https://chromium-review.googlesource.com/c/1326149Reviewed-by: default avatarVaclav Brozek <vabr@chromium.org>
Commit-Queue: Marc Treib <treib@chromium.org>
Cr-Commit-Position: refs/heads/master@{#606445}
parent 0a026de4
......@@ -30,7 +30,6 @@
#include "components/password_manager/core/common/password_manager_features.h"
#include "components/security_state/core/security_state.h"
#include "components/strings/grit/components_strings.h"
#include "components/sync/driver/fake_sync_service.h"
#include "components/ukm/test_ukm_recorder.h"
#include "services/metrics/public/cpp/ukm_builders.h"
#include "testing/gmock/include/gmock/gmock.h"
......@@ -97,23 +96,9 @@ class TestPasswordManagerClient : public StubPasswordManagerClient {
GURL main_frame_url_;
};
class MockSyncService : public syncer::FakeSyncService {
public:
MockSyncService() {}
~MockSyncService() override {}
MOCK_CONST_METHOD0(IsFirstSetupComplete, bool());
MOCK_CONST_METHOD0(IsSyncActive, bool());
MOCK_CONST_METHOD0(IsUsingSecondaryPassphrase, bool());
MOCK_CONST_METHOD0(GetActiveDataTypes, syncer::ModelTypeSet());
};
class MockAutofillClient : public autofill::TestAutofillClient {
public:
MockAutofillClient() : sync_service_(nullptr) {}
MockAutofillClient(MockSyncService* sync_service)
: sync_service_(sync_service) {
LOG(ERROR) << "init mpck client";
}
MockAutofillClient() = default;
MOCK_METHOD5(ShowAutofillPopup,
void(const gfx::RectF& element_bounds,
base::i18n::TextDirection text_direction,
......@@ -122,11 +107,6 @@ class MockAutofillClient : public autofill::TestAutofillClient {
base::WeakPtr<autofill::AutofillPopupDelegate> delegate));
MOCK_METHOD0(HideAutofillPopup, void());
MOCK_METHOD1(ExecuteCommand, void(int));
syncer::SyncService* GetSyncService() override { return sync_service_; }
private:
MockSyncService* sync_service_;
};
bool IsPreLollipopAndroid() {
......
......@@ -12,7 +12,7 @@
#include "components/prefs/pref_service.h"
#include "components/prefs/testing_pref_service.h"
#include "components/sync/base/model_type.h"
#include "components/sync/driver/fake_sync_service.h"
#include "components/sync/driver/test_sync_service.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
......@@ -22,56 +22,6 @@ namespace {
enum class CustomPassphraseState { NONE, SET };
class TestSyncService : public syncer::FakeSyncService {
public:
// FakeSyncService overrides.
int GetDisableReasons() const override { return disable_reasons_; }
TransportState GetTransportState() const override {
return IsFirstSetupComplete()
? TransportState::ACTIVE
: TransportState::PENDING_DESIRED_CONFIGURATION;
}
bool IsFirstSetupComplete() const override {
return is_first_setup_complete_;
}
syncer::ModelTypeSet GetActiveDataTypes() const override { return type_set_; }
syncer::ModelTypeSet GetPreferredDataTypes() const override {
return type_set_;
}
bool IsUsingSecondaryPassphrase() const override {
return is_using_secondary_passphrase_;
}
void set_is_using_secondary_passphrase(bool is_using_secondary_passphrase) {
is_using_secondary_passphrase_ = is_using_secondary_passphrase;
}
void set_active_data_types(syncer::ModelTypeSet type_set) {
type_set_ = type_set;
}
void set_disable_reasons(int disable_reasons) {
disable_reasons_ = disable_reasons;
}
void set_first_setup_complete(bool setup_complete) {
is_first_setup_complete_ = setup_complete;
}
void ClearActiveDataTypes() { type_set_.Clear(); }
private:
int disable_reasons_ = DISABLE_REASON_NONE;
syncer::ModelTypeSet type_set_;
bool is_using_secondary_passphrase_ = false;
bool is_first_setup_complete_ = true;
};
} // namespace
class PasswordManagerPasswordBubbleExperimentTest : public testing::Test {
......@@ -82,21 +32,19 @@ class PasswordManagerPasswordBubbleExperimentTest : public testing::Test {
PrefService* prefs() { return &pref_service_; }
TestSyncService* sync_service() { return &fake_sync_service_; }
syncer::TestSyncService* sync_service() { return &fake_sync_service_; }
protected:
void SetupFakeSyncServiceForTestCase(syncer::ModelType type,
CustomPassphraseState passphrase_state) {
syncer::ModelTypeSet active_types;
active_types.Put(type);
sync_service()->ClearActiveDataTypes();
sync_service()->set_active_data_types(active_types);
sync_service()->set_is_using_secondary_passphrase(
passphrase_state == CustomPassphraseState::SET);
sync_service()->SetPreferredDataTypes({type});
sync_service()->SetActiveDataTypes({type});
sync_service()->SetIsUsingSecondaryPassphrase(passphrase_state ==
CustomPassphraseState::SET);
}
private:
TestSyncService fake_sync_service_;
syncer::TestSyncService fake_sync_service_;
TestingPrefServiceSimple pref_service_;
};
......@@ -122,11 +70,16 @@ TEST_F(PasswordManagerPasswordBubbleExperimentTest,
prefs()->SetInteger(
password_manager::prefs::kNumberSignInPasswordPromoShown,
test_case.current_shown_count);
sync_service()->set_disable_reasons(
sync_service()->SetDisableReasons(
test_case.is_sync_allowed
? syncer::SyncService::DISABLE_REASON_NONE
: syncer::SyncService::DISABLE_REASON_PLATFORM_OVERRIDE);
sync_service()->set_first_setup_complete(test_case.is_first_setup_complete);
sync_service()->SetFirstSetupComplete(test_case.is_first_setup_complete);
sync_service()->SetTransportState(
test_case.is_first_setup_complete
? syncer::SyncService::TransportState::ACTIVE
: syncer::SyncService::TransportState::
PENDING_DESIRED_CONFIGURATION);
EXPECT_EQ(test_case.result,
ShouldShowChromeSignInPasswordPromo(prefs(), sync_service()));
......
......@@ -66,6 +66,10 @@ void TestSyncService::SetAuthError(const GoogleServiceAuthError& auth_error) {
auth_error_ = auth_error;
}
void TestSyncService::SetFirstSetupComplete(bool first_setup_complete) {
first_setup_complete_ = first_setup_complete;
}
void TestSyncService::SetPreferredDataTypes(const ModelTypeSet& types) {
preferred_data_types_ = types;
}
......@@ -115,10 +119,12 @@ const GoogleServiceAuthError& TestSyncService::GetAuthError() const {
}
bool TestSyncService::IsFirstSetupComplete() const {
return true;
return first_setup_complete_;
}
void TestSyncService::SetFirstSetupComplete() {}
void TestSyncService::SetFirstSetupComplete() {
first_setup_complete_ = true;
}
std::unique_ptr<SyncSetupInProgressHandle>
TestSyncService::GetSetupInProgressHandle() {
......
......@@ -30,6 +30,7 @@ class TestSyncService : public SyncService {
void SetAuthenticatedAccountInfo(const AccountInfo& account_info);
void SetIsAuthenticatedAccountPrimary(bool is_primary);
void SetAuthError(const GoogleServiceAuthError& auth_error);
void SetFirstSetupComplete(bool first_setup_complete);
void SetPreferredDataTypes(const ModelTypeSet& types);
void SetActiveDataTypes(const ModelTypeSet& types);
void SetIsUsingSecondaryPassphrase(bool enabled);
......@@ -112,6 +113,7 @@ class TestSyncService : public SyncService {
AccountInfo account_info_;
bool account_is_primary_ = true;
GoogleServiceAuthError auth_error_;
bool first_setup_complete_ = true;
ModelTypeSet preferred_data_types_;
ModelTypeSet active_data_types_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment