#include "base/prefs/testing_pref_service.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
+#include "components/password_manager/core/browser/mock_password_manager_driver.h"
#include "components/password_manager/core/browser/mock_password_store.h"
+#include "components/password_manager/core/browser/password_autofill_manager.h"
#include "components/password_manager/core/browser/password_manager.h"
-#include "components/password_manager/core/browser/password_manager_client.h"
#include "components/password_manager/core/browser/password_manager_driver.h"
#include "components/password_manager/core/browser/password_store.h"
+#include "components/password_manager/core/browser/stub_password_manager_client.h"
#include "components/password_manager/core/common/password_manager_pref_names.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
class AutofillManager;
}
+namespace password_manager {
+
namespace {
-class MockPasswordManagerClient : public PasswordManagerClient {
+class MockPasswordManagerClient : public StubPasswordManagerClient {
public:
MOCK_METHOD1(PromptUserToSavePassword, void(PasswordFormManager*));
MOCK_METHOD0(GetPasswordStore, PasswordStore*());
MOCK_METHOD0(GetPrefs, PrefService*());
MOCK_METHOD0(GetDriver, PasswordManagerDriver*());
- MOCK_METHOD1(GetProbabilityForExperiment,
- base::FieldTrial::Probability(const std::string&));
-
- // The following is required because GMock does not support move-only
- // parameters.
- MOCK_METHOD1(AuthenticateAutofillAndFillFormPtr,
- void(autofill::PasswordFormFillData* fill_data));
- virtual void AuthenticateAutofillAndFillForm(
- scoped_ptr<autofill::PasswordFormFillData> fill_data) OVERRIDE {
- return AuthenticateAutofillAndFillFormPtr(fill_data.release());
- }
-};
-
-class MockPasswordManagerDriver : public PasswordManagerDriver {
- public:
- MOCK_METHOD1(FillPasswordForm, void(const autofill::PasswordFormFillData&));
- MOCK_METHOD0(DidLastPageLoadEncounterSSLErrors, bool());
- MOCK_METHOD0(IsOffTheRecord, bool());
- MOCK_METHOD0(GetPasswordGenerationManager, PasswordGenerationManager*());
- MOCK_METHOD0(GetPasswordManager, PasswordManager*());
- MOCK_METHOD0(GetAutofillManager, autofill::AutofillManager*());
- MOCK_METHOD1(AllowPasswordGenerationForForm, void(autofill::PasswordForm*));
- MOCK_METHOD1(AccountCreationFormsFound,
- void(const std::vector<autofill::FormData>&));
};
ACTION_P(InvokeConsumer, forms) { arg0->OnGetPasswordStoreResults(forms); }
: PasswordManager(client) {}
virtual ~TestPasswordManager() {}
- virtual void OnPasswordFormSubmitted(const PasswordForm& form) OVERRIDE {
- PasswordManager::OnPasswordFormSubmitted(form);
- }
-
private:
DISALLOW_COPY_AND_ASSIGN(TestPasswordManager);
};
EXPECT_CALL(client_, GetDriver()).WillRepeatedly(Return(&driver_));
manager_.reset(new TestPasswordManager(&client_));
+ password_autofill_manager_.reset(
+ new PasswordAutofillManager(&client_, NULL));
EXPECT_CALL(driver_, DidLastPageLoadEncounterSSLErrors())
.WillRepeatedly(Return(false));
EXPECT_CALL(driver_, GetPasswordManager())
.WillRepeatedly(Return(manager_.get()));
EXPECT_CALL(driver_, AllowPasswordGenerationForForm(_)).Times(AnyNumber());
+ EXPECT_CALL(driver_, GetPasswordAutofillManager())
+ .WillRepeatedly(Return(password_autofill_manager_.get()));
EXPECT_CALL(*store_, ReportMetricsImpl()).Times(AnyNumber());
}
scoped_refptr<MockPasswordStore> store_;
MockPasswordManagerClient client_;
MockPasswordManagerDriver driver_;
+ scoped_ptr<PasswordAutofillManager> password_autofill_manager_;
scoped_ptr<TestPasswordManager> manager_;
PasswordForm submitted_form_;
};
manager()->OnPasswordFormsParsed(observed);
manager()->OnPasswordFormsRendered(observed);
}
+
+} // namespace password_manager