Commit 4c4145ea authored by melandory's avatar melandory Committed by Commit bot

Improovements in Save password infobar delegate tests.

Follow-up CL for https://codereview.chromium.org/1045173003/

BUG=472006
R=vabr@chromium.org

Review URL: https://codereview.chromium.org/1066423002

Cr-Commit-Position: refs/heads/master@{#324390}
parent 4c7c7690
......@@ -54,11 +54,11 @@ class SavePasswordInfoBarDelegateTest : public ChromeRenderViewHostTestHarness {
void TearDown() override;
const autofill::PasswordForm& test_form() { return test_form_; }
MockPasswordFormManager* CreateMockFormManager();
scoped_ptr<MockPasswordFormManager> CreateMockFormManager();
protected:
scoped_ptr<ConfirmInfoBarDelegate> CreateDelegate(
MockPasswordFormManager* password_form_manager,
scoped_ptr<password_manager::PasswordFormManager> password_form_manager,
password_manager::CredentialSourceType type);
password_manager::StubPasswordManagerClient client_;
......@@ -74,20 +74,18 @@ SavePasswordInfoBarDelegateTest::SavePasswordInfoBarDelegateTest() {
test_form_.password_value = base::ASCIIToUTF16("12345");
}
MockPasswordFormManager*
scoped_ptr<MockPasswordFormManager>
SavePasswordInfoBarDelegateTest::CreateMockFormManager() {
return new MockPasswordFormManager(&client_, test_form());
return scoped_ptr<MockPasswordFormManager>(
new MockPasswordFormManager(&client_, test_form()));
}
scoped_ptr<ConfirmInfoBarDelegate>
SavePasswordInfoBarDelegateTest::CreateDelegate(
MockPasswordFormManager* password_form_manager,
scoped_ptr<password_manager::PasswordFormManager> password_form_manager,
password_manager::CredentialSourceType type) {
scoped_ptr<ConfirmInfoBarDelegate> delegate(
new TestSavePasswordInfobarDelegate(
scoped_ptr<password_manager::PasswordFormManager>(
password_form_manager),
type));
new TestSavePasswordInfobarDelegate(password_form_manager.Pass(), type));
return delegate.Pass();
}
......@@ -100,26 +98,24 @@ void SavePasswordInfoBarDelegateTest::TearDown() {
}
TEST_F(SavePasswordInfoBarDelegateTest, CancelTestCredentialSourceAPI) {
// SavePasswordInfoBarDelegate::Create takes ownership of
// password_form_manager_ptr;
MockPasswordFormManager* password_form_manager_ptr = CreateMockFormManager();
scoped_ptr<MockPasswordFormManager> password_form_manager(
CreateMockFormManager());
EXPECT_CALL(*password_form_manager.get(), PermanentlyBlacklist())
.Times(testing::Exactly(0));
scoped_ptr<ConfirmInfoBarDelegate> infobar(CreateDelegate(
password_form_manager_ptr,
password_form_manager.Pass(),
password_manager::CredentialSourceType::CREDENTIAL_SOURCE_API));
EXPECT_CALL(*password_form_manager_ptr, PermanentlyBlacklist())
.Times(testing::Exactly(0));
EXPECT_TRUE(infobar->Cancel());
}
TEST_F(SavePasswordInfoBarDelegateTest,
CancelTestCredentialSourcePasswordManager) {
// SavePasswordInfoBarDelegate::Create takes ownership of
// password_form_manager_ptr;
MockPasswordFormManager* password_form_manager_ptr = CreateMockFormManager();
scoped_ptr<ConfirmInfoBarDelegate> infobar(CreateDelegate(
password_form_manager_ptr, password_manager::CredentialSourceType::
CREDENTIAL_SOURCE_PASSWORD_MANAGER));
EXPECT_CALL(*password_form_manager_ptr, PermanentlyBlacklist())
scoped_ptr<MockPasswordFormManager> password_form_manager(
CreateMockFormManager());
EXPECT_CALL(*password_form_manager.get(), PermanentlyBlacklist())
.Times(testing::Exactly(1));
scoped_ptr<ConfirmInfoBarDelegate> infobar(CreateDelegate(
password_form_manager.Pass(), password_manager::CredentialSourceType::
CREDENTIAL_SOURCE_PASSWORD_MANAGER));
EXPECT_TRUE(infobar->Cancel());
}
......@@ -36,7 +36,7 @@ class PasswordManagerDriver;
class PasswordFormManager;
// TODO(melandory): Separate the PasswordFormManager API interface and the
// implementation in two classes crbug/473184.
// implementation in two classes http://crbug.com/473184.
// Per-tab password manager. Handles creation and management of UI elements,
// receiving password form data from the renderer and managing the password
......
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