Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(903)

Unified Diff: chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc

Issue 1686433002: Remove DialogDelegate::OnClosed() which is redundant with (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc
diff --git a/chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc b/chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc
index 7209458707670660d2b9742f672b7f4c65888ee7..7ed9d1ff8b00fdb92ba8a4a7c305c5116fcc3db6 100644
--- a/chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc
+++ b/chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc
@@ -8,6 +8,7 @@
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/passwords/manage_passwords_ui_controller.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
+#include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/browser/ui/views/passwords/account_chooser_dialog_view.h"
#include "chrome/browser/ui/views/passwords/auto_signin_first_run_dialog_view.h"
#include "chrome/test/base/in_process_browser_test.h"
@@ -44,6 +45,7 @@ class TestURLFetcherCallback {
class TestManagePasswordsUIController : public ManagePasswordsUIController {
public:
explicit TestManagePasswordsUIController(content::WebContents* web_contents);
+ ~TestManagePasswordsUIController() override;
void OnDialogHidden() override;
AccountChooserPrompt* CreateAccountChooser(
@@ -65,6 +67,7 @@ class TestManagePasswordsUIController : public ManagePasswordsUIController {
private:
AccountChooserPrompt* current_account_chooser_;
AutoSigninFirstRunPrompt* current_autosignin_prompt_;
+ bool dialog_closed_;
DISALLOW_COPY_AND_ASSIGN(TestManagePasswordsUIController);
};
@@ -73,7 +76,8 @@ TestManagePasswordsUIController::TestManagePasswordsUIController(
content::WebContents* web_contents)
: ManagePasswordsUIController(web_contents),
current_account_chooser_(nullptr),
- current_autosignin_prompt_(nullptr) {
+ current_autosignin_prompt_(nullptr),
+ dialog_closed_(false) {
// Attach TestManagePasswordsUIController to |web_contents| so the default
// ManagePasswordsUIController isn't created.
// Do not silently replace an existing ManagePasswordsUIController because it
@@ -82,9 +86,15 @@ TestManagePasswordsUIController::TestManagePasswordsUIController(
web_contents->SetUserData(UserDataKey(), this);
}
+TestManagePasswordsUIController::~TestManagePasswordsUIController() {
+ if (!dialog_closed_)
+ OnDialogHidden();
+}
+
void TestManagePasswordsUIController::OnDialogHidden() {
ManagePasswordsUIController::OnDialogHidden();
OnDialogClosed();
+ dialog_closed_ = true;
}
AccountChooserPrompt* TestManagePasswordsUIController::CreateAccountChooser(
@@ -200,7 +210,7 @@ IN_PROC_BROWSER_TEST_F(PasswordDialogViewTest,
&password_manager::CredentialInfo::type,
password_manager::CredentialType::CREDENTIAL_TYPE_EMPTY)));
EXPECT_CALL(*controller(), OnDialogClosed());
- EXPECT_TRUE(dialog->Close());
+ dialog->GetWidget()->Close();
EXPECT_FALSE(controller()->current_autosignin_prompt());
}
@@ -261,7 +271,7 @@ IN_PROC_BROWSER_TEST_F(PasswordDialogViewTest,
&password_manager::CredentialInfo::type,
password_manager::CredentialType::CREDENTIAL_TYPE_EMPTY)));
EXPECT_CALL(*controller(), OnDialogClosed());
- EXPECT_TRUE(dialog->Close());
+ dialog->GetWidget()->Close();
EXPECT_FALSE(controller()->current_autosignin_prompt());
}
@@ -292,8 +302,8 @@ IN_PROC_BROWSER_TEST_F(PasswordDialogViewTest,
controller()->ChooseCredential(
form, password_manager::CredentialType::CREDENTIAL_TYPE_PASSWORD);
- EXPECT_CALL(*controller(), OnDialogClosed());
EXPECT_TRUE(controller()->current_autosignin_prompt());
+ EXPECT_CALL(*controller(), OnDialogClosed());
}
IN_PROC_BROWSER_TEST_F(PasswordDialogViewTest,
@@ -377,12 +387,10 @@ IN_PROC_BROWSER_TEST_F(PasswordDialogViewTest, PopupAutoSigninPrompt) {
EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->GetState());
AutoSigninFirstRunDialogView* dialog =
controller()->current_autosignin_prompt();
- // This is the way how ESC is processed. It's important to reproduce it
- // because of double AutoSigninFirstRunDialogView::OnClosed call due to a bug
- // http://crbug.com/583330.
ui::Accelerator esc(ui::VKEY_ESCAPE, 0);
EXPECT_CALL(*controller(), OnDialogClosed());
EXPECT_TRUE(dialog->GetWidget()->client_view()->AcceleratorPressed(esc));
+ content::RunAllPendingInMessageLoop();
testing::Mock::VerifyAndClearExpectations(controller());
EXPECT_TRUE(
password_bubble_experiment::ShouldShowAutoSignInPromptFirstRunExperience(
@@ -433,8 +441,9 @@ IN_PROC_BROWSER_TEST_F(PasswordDialogViewTest,
blocked_form.reset(new autofill::PasswordForm(form));
client()->NotifyUserAutoSigninBlockedOnFirstRun(std::move(blocked_form));
client()->NotifySuccessfulLoginWithExistingPassword(form);
- EXPECT_CALL(*controller(), OnDialogClosed());
ASSERT_TRUE(controller()->current_autosignin_prompt());
+
+ EXPECT_CALL(*controller(), OnDialogClosed());
}
} // namespace

Powered by Google App Engine
This is Rietveld 408576698