| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/account_chooser_dialog_android.h" | 5 #include "chrome/browser/password_manager/account_chooser_dialog_android.h" |
| 6 | 6 |
| 7 #include "base/macros.h" | 7 #include "base/macros.h" |
| 8 #include "base/test/histogram_tester.h" | 8 #include "base/test/histogram_tester.h" |
| 9 #include "chrome/browser/password_manager/chrome_password_manager_client.h" | 9 #include "chrome/browser/password_manager/chrome_password_manager_client.h" |
| 10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 | 42 |
| 43 void SetUp() override; | 43 void SetUp() override; |
| 44 | 44 |
| 45 MOCK_METHOD1(OnChooseCredential, void(const autofill::PasswordForm*)); | 45 MOCK_METHOD1(OnChooseCredential, void(const autofill::PasswordForm*)); |
| 46 | 46 |
| 47 protected: | 47 protected: |
| 48 AccountChooserDialogAndroid* CreateDialogOneAccount(); | 48 AccountChooserDialogAndroid* CreateDialogOneAccount(); |
| 49 AccountChooserDialogAndroid* CreateDialogManyAccounts(); | 49 AccountChooserDialogAndroid* CreateDialogManyAccounts(); |
| 50 | 50 |
| 51 AccountChooserDialogAndroid* CreateDialog( | 51 AccountChooserDialogAndroid* CreateDialog( |
| 52 ScopedVector<autofill::PasswordForm> credentials); | 52 std::vector<std::unique_ptr<autofill::PasswordForm>> credentials); |
| 53 | 53 |
| 54 private: | 54 private: |
| 55 DISALLOW_COPY_AND_ASSIGN(AccountChooserDialogAndroidTest); | 55 DISALLOW_COPY_AND_ASSIGN(AccountChooserDialogAndroidTest); |
| 56 }; | 56 }; |
| 57 | 57 |
| 58 void AccountChooserDialogAndroidTest::SetUp() { | 58 void AccountChooserDialogAndroidTest::SetUp() { |
| 59 ChromeRenderViewHostTestHarness::SetUp(); | 59 ChromeRenderViewHostTestHarness::SetUp(); |
| 60 ChromePasswordManagerClient::CreateForWebContentsWithAutofillClient( | 60 ChromePasswordManagerClient::CreateForWebContentsWithAutofillClient( |
| 61 web_contents(), nullptr); | 61 web_contents(), nullptr); |
| 62 } | 62 } |
| 63 | 63 |
| 64 AccountChooserDialogAndroid* AccountChooserDialogAndroidTest::CreateDialog( | 64 AccountChooserDialogAndroid* AccountChooserDialogAndroidTest::CreateDialog( |
| 65 ScopedVector<autofill::PasswordForm> credentials) { | 65 std::vector<std::unique_ptr<autofill::PasswordForm>> credentials) { |
| 66 ScopedVector<autofill::PasswordForm> deprecated_federated; | 66 std::vector<std::unique_ptr<autofill::PasswordForm>> deprecated_federated; |
| 67 return new AccountChooserDialogAndroid( | 67 return new AccountChooserDialogAndroid( |
| 68 web_contents(), std::move(credentials), std::move(deprecated_federated), | 68 web_contents(), std::move(credentials), std::move(deprecated_federated), |
| 69 GURL("https://example.com"), | 69 GURL("https://example.com"), |
| 70 base::Bind(&AccountChooserDialogAndroidTest::OnChooseCredential, | 70 base::Bind(&AccountChooserDialogAndroidTest::OnChooseCredential, |
| 71 base::Unretained(this))); | 71 base::Unretained(this))); |
| 72 } | 72 } |
| 73 | 73 |
| 74 AccountChooserDialogAndroid* | 74 AccountChooserDialogAndroid* |
| 75 AccountChooserDialogAndroidTest::CreateDialogOneAccount() { | 75 AccountChooserDialogAndroidTest::CreateDialogOneAccount() { |
| 76 ScopedVector<autofill::PasswordForm> credentials; | 76 std::vector<std::unique_ptr<autofill::PasswordForm>> credentials; |
| 77 credentials.push_back(CreatePasswordFormFromDataForTesting(kFormData)); | 77 credentials.push_back(CreatePasswordFormFromDataForTesting(kFormData)); |
| 78 return CreateDialog(std::move(credentials)); | 78 return CreateDialog(std::move(credentials)); |
| 79 } | 79 } |
| 80 | 80 |
| 81 AccountChooserDialogAndroid* | 81 AccountChooserDialogAndroid* |
| 82 AccountChooserDialogAndroidTest::CreateDialogManyAccounts() { | 82 AccountChooserDialogAndroidTest::CreateDialogManyAccounts() { |
| 83 ScopedVector<autofill::PasswordForm> credentials; | 83 std::vector<std::unique_ptr<autofill::PasswordForm>> credentials; |
| 84 credentials.push_back(CreatePasswordFormFromDataForTesting(kFormData)); | 84 credentials.push_back(CreatePasswordFormFromDataForTesting(kFormData)); |
| 85 credentials.push_back(CreatePasswordFormFromDataForTesting(kFormData)); | 85 credentials.push_back(CreatePasswordFormFromDataForTesting(kFormData)); |
| 86 return CreateDialog(std::move(credentials)); | 86 return CreateDialog(std::move(credentials)); |
| 87 } | 87 } |
| 88 | 88 |
| 89 TEST_F(AccountChooserDialogAndroidTest, | 89 TEST_F(AccountChooserDialogAndroidTest, |
| 90 CheckHistogramsReportingOnceAccountViaOnAccountClick) { | 90 CheckHistogramsReportingOnceAccountViaOnAccountClick) { |
| 91 base::HistogramTester histogram_tester; | 91 base::HistogramTester histogram_tester; |
| 92 AccountChooserDialogAndroid* dialog = CreateDialogOneAccount(); | 92 AccountChooserDialogAndroid* dialog = CreateDialogOneAccount(); |
| 93 dialog->OnCredentialClicked( | 93 dialog->OnCredentialClicked( |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 142 | 142 |
| 143 histogram_tester.ExpectUniqueSample( | 143 histogram_tester.ExpectUniqueSample( |
| 144 "PasswordManager.AccountChooserDialog", | 144 "PasswordManager.AccountChooserDialog", |
| 145 password_manager::metrics_util::ACCOUNT_CHOOSER_CREDENTIAL_CHOSEN, 1); | 145 password_manager::metrics_util::ACCOUNT_CHOOSER_CREDENTIAL_CHOSEN, 1); |
| 146 histogram_tester.ExpectUniqueSample( | 146 histogram_tester.ExpectUniqueSample( |
| 147 "PasswordManager.AccountChooserDialogMultipleAccounts", | 147 "PasswordManager.AccountChooserDialogMultipleAccounts", |
| 148 password_manager::metrics_util::ACCOUNT_CHOOSER_CREDENTIAL_CHOSEN, 1); | 148 password_manager::metrics_util::ACCOUNT_CHOOSER_CREDENTIAL_CHOSEN, 1); |
| 149 histogram_tester.ExpectTotalCount( | 149 histogram_tester.ExpectTotalCount( |
| 150 "PasswordManager.AccountChooserDialogOneAccount", 0); | 150 "PasswordManager.AccountChooserDialogOneAccount", 0); |
| 151 } | 151 } |
| OLD | NEW |