OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/password_manager/save_password_infobar_delegate_android
.h" | 5 #include "chrome/browser/password_manager/save_password_infobar_delegate_android
.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 27 matching lines...) Expand all Loading... |
38 const autofill::PasswordForm& form, | 38 const autofill::PasswordForm& form, |
39 password_manager::FormFetcher* form_fetcher) | 39 password_manager::FormFetcher* form_fetcher) |
40 : PasswordFormManager( | 40 : PasswordFormManager( |
41 password_manager, | 41 password_manager, |
42 client, | 42 client, |
43 driver, | 43 driver, |
44 form, | 44 form, |
45 base::WrapUnique(new password_manager::StubFormSaver), | 45 base::WrapUnique(new password_manager::StubFormSaver), |
46 form_fetcher) {} | 46 form_fetcher) {} |
47 | 47 |
| 48 private: |
48 ~MockPasswordFormManager() override {} | 49 ~MockPasswordFormManager() override {} |
49 | 50 |
50 private: | |
51 DISALLOW_COPY_AND_ASSIGN(MockPasswordFormManager); | 51 DISALLOW_COPY_AND_ASSIGN(MockPasswordFormManager); |
52 }; | 52 }; |
53 | 53 |
54 class TestSavePasswordInfobarDelegate : public SavePasswordInfoBarDelegate { | 54 class TestSavePasswordInfobarDelegate : public SavePasswordInfoBarDelegate { |
55 public: | 55 public: |
56 TestSavePasswordInfobarDelegate( | 56 TestSavePasswordInfobarDelegate( |
57 content::WebContents* web_contents, | 57 content::WebContents* web_contents, |
58 std::unique_ptr<password_manager::PasswordFormManager> form_to_save) | 58 scoped_refptr<password_manager::PasswordFormManager> form_to_save) |
59 : SavePasswordInfoBarDelegate(web_contents, | 59 : SavePasswordInfoBarDelegate(web_contents, |
60 std::move(form_to_save), | 60 std::move(form_to_save), |
61 true /* is_smartlock_branding_enabled */) {} | 61 true /* is_smartlock_branding_enabled */) {} |
62 | 62 |
63 ~TestSavePasswordInfobarDelegate() override {} | 63 ~TestSavePasswordInfobarDelegate() override {} |
64 }; | 64 }; |
65 | 65 |
66 } // namespace | 66 } // namespace |
67 | 67 |
68 class SavePasswordInfoBarDelegateTest : public ChromeRenderViewHostTestHarness { | 68 class SavePasswordInfoBarDelegateTest : public ChromeRenderViewHostTestHarness { |
69 public: | 69 public: |
70 SavePasswordInfoBarDelegateTest(); | 70 SavePasswordInfoBarDelegateTest(); |
71 ~SavePasswordInfoBarDelegateTest() override{}; | 71 ~SavePasswordInfoBarDelegateTest() override{}; |
72 | 72 |
73 void SetUp() override; | 73 void SetUp() override; |
74 void TearDown() override; | 74 void TearDown() override; |
75 | 75 |
76 PrefService* prefs(); | 76 PrefService* prefs(); |
77 const autofill::PasswordForm& test_form() { return test_form_; } | 77 const autofill::PasswordForm& test_form() { return test_form_; } |
78 std::unique_ptr<MockPasswordFormManager> CreateMockFormManager(); | 78 scoped_refptr<MockPasswordFormManager> CreateMockFormManager(); |
79 | 79 |
80 protected: | 80 protected: |
81 std::unique_ptr<ConfirmInfoBarDelegate> CreateDelegate( | 81 std::unique_ptr<ConfirmInfoBarDelegate> CreateDelegate( |
82 std::unique_ptr<password_manager::PasswordFormManager> | 82 scoped_refptr<password_manager::PasswordFormManager> |
83 password_form_manager); | 83 password_form_manager); |
84 | 84 |
85 password_manager::StubPasswordManagerClient client_; | 85 password_manager::StubPasswordManagerClient client_; |
86 password_manager::StubPasswordManagerDriver driver_; | 86 password_manager::StubPasswordManagerDriver driver_; |
87 password_manager::PasswordManager password_manager_; | 87 password_manager::PasswordManager password_manager_; |
88 | 88 |
89 autofill::PasswordForm test_form_; | 89 autofill::PasswordForm test_form_; |
90 | 90 |
91 private: | 91 private: |
92 password_manager::FakeFormFetcher fetcher_; | 92 password_manager::FakeFormFetcher fetcher_; |
93 | 93 |
94 DISALLOW_COPY_AND_ASSIGN(SavePasswordInfoBarDelegateTest); | 94 DISALLOW_COPY_AND_ASSIGN(SavePasswordInfoBarDelegateTest); |
95 }; | 95 }; |
96 | 96 |
97 SavePasswordInfoBarDelegateTest::SavePasswordInfoBarDelegateTest() | 97 SavePasswordInfoBarDelegateTest::SavePasswordInfoBarDelegateTest() |
98 : password_manager_(&client_) { | 98 : password_manager_(&client_) { |
99 test_form_.origin = GURL("http://example.com"); | 99 test_form_.origin = GURL("http://example.com"); |
100 test_form_.username_value = base::ASCIIToUTF16("username"); | 100 test_form_.username_value = base::ASCIIToUTF16("username"); |
101 test_form_.password_value = base::ASCIIToUTF16("12345"); | 101 test_form_.password_value = base::ASCIIToUTF16("12345"); |
102 fetcher_.Fetch(); | 102 fetcher_.Fetch(); |
103 } | 103 } |
104 | 104 |
105 PrefService* SavePasswordInfoBarDelegateTest::prefs() { | 105 PrefService* SavePasswordInfoBarDelegateTest::prefs() { |
106 Profile* profile = | 106 Profile* profile = |
107 Profile::FromBrowserContext(web_contents()->GetBrowserContext()); | 107 Profile::FromBrowserContext(web_contents()->GetBrowserContext()); |
108 return profile->GetPrefs(); | 108 return profile->GetPrefs(); |
109 } | 109 } |
110 | 110 |
111 std::unique_ptr<MockPasswordFormManager> | 111 scoped_refptr<MockPasswordFormManager> |
112 SavePasswordInfoBarDelegateTest::CreateMockFormManager() { | 112 SavePasswordInfoBarDelegateTest::CreateMockFormManager() { |
113 return std::unique_ptr<MockPasswordFormManager>( | 113 return scoped_refptr<MockPasswordFormManager>( |
114 new MockPasswordFormManager(&password_manager_, &client_, | 114 new MockPasswordFormManager(&password_manager_, &client_, |
115 driver_.AsWeakPtr(), test_form(), &fetcher_)); | 115 driver_.AsWeakPtr(), test_form(), &fetcher_)); |
116 } | 116 } |
117 | 117 |
118 std::unique_ptr<ConfirmInfoBarDelegate> | 118 std::unique_ptr<ConfirmInfoBarDelegate> |
119 SavePasswordInfoBarDelegateTest::CreateDelegate( | 119 SavePasswordInfoBarDelegateTest::CreateDelegate( |
120 std::unique_ptr<password_manager::PasswordFormManager> | 120 scoped_refptr<password_manager::PasswordFormManager> |
121 password_form_manager) { | 121 password_form_manager) { |
122 std::unique_ptr<ConfirmInfoBarDelegate> delegate( | 122 std::unique_ptr<ConfirmInfoBarDelegate> delegate( |
123 new TestSavePasswordInfobarDelegate(web_contents(), | 123 new TestSavePasswordInfobarDelegate(web_contents(), |
124 std::move(password_form_manager))); | 124 std::move(password_form_manager))); |
125 return delegate; | 125 return delegate; |
126 } | 126 } |
127 | 127 |
128 void SavePasswordInfoBarDelegateTest::SetUp() { | 128 void SavePasswordInfoBarDelegateTest::SetUp() { |
129 ChromeRenderViewHostTestHarness::SetUp(); | 129 ChromeRenderViewHostTestHarness::SetUp(); |
130 } | 130 } |
131 | 131 |
132 void SavePasswordInfoBarDelegateTest::TearDown() { | 132 void SavePasswordInfoBarDelegateTest::TearDown() { |
133 ChromeRenderViewHostTestHarness::TearDown(); | 133 ChromeRenderViewHostTestHarness::TearDown(); |
134 } | 134 } |
135 | 135 |
136 TEST_F(SavePasswordInfoBarDelegateTest, CancelTestCredentialSourceAPI) { | 136 TEST_F(SavePasswordInfoBarDelegateTest, CancelTestCredentialSourceAPI) { |
137 std::unique_ptr<MockPasswordFormManager> password_form_manager( | 137 scoped_refptr<MockPasswordFormManager> password_form_manager( |
138 CreateMockFormManager()); | 138 CreateMockFormManager()); |
139 EXPECT_CALL(*password_form_manager.get(), PermanentlyBlacklist()); | 139 EXPECT_CALL(*password_form_manager.get(), PermanentlyBlacklist()); |
140 std::unique_ptr<ConfirmInfoBarDelegate> infobar( | 140 std::unique_ptr<ConfirmInfoBarDelegate> infobar( |
141 CreateDelegate(std::move(password_form_manager))); | 141 CreateDelegate(std::move(password_form_manager))); |
142 EXPECT_TRUE(infobar->Cancel()); | 142 EXPECT_TRUE(infobar->Cancel()); |
143 } | 143 } |
144 | 144 |
145 TEST_F(SavePasswordInfoBarDelegateTest, | 145 TEST_F(SavePasswordInfoBarDelegateTest, |
146 CancelTestCredentialSourcePasswordManager) { | 146 CancelTestCredentialSourcePasswordManager) { |
147 std::unique_ptr<MockPasswordFormManager> password_form_manager( | 147 scoped_refptr<MockPasswordFormManager> password_form_manager( |
148 CreateMockFormManager()); | 148 CreateMockFormManager()); |
149 EXPECT_CALL(*password_form_manager.get(), PermanentlyBlacklist()); | 149 EXPECT_CALL(*password_form_manager.get(), PermanentlyBlacklist()); |
150 std::unique_ptr<ConfirmInfoBarDelegate> infobar( | 150 std::unique_ptr<ConfirmInfoBarDelegate> infobar( |
151 CreateDelegate(std::move(password_form_manager))); | 151 CreateDelegate(std::move(password_form_manager))); |
152 EXPECT_TRUE(infobar->Cancel()); | 152 EXPECT_TRUE(infobar->Cancel()); |
153 } | 153 } |
OLD | NEW |