Index: chrome/browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc |
diff --git a/chrome/browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc b/chrome/browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc |
index 211d395b616610a5faf13c7a45f6e1a31aa6502e..98869b8f33a2be9a757f9345ba074b598a329b37 100644 |
--- a/chrome/browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc |
+++ b/chrome/browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc |
@@ -13,7 +13,6 @@ |
#include "chrome/browser/extensions/extension_install_prompt.h" |
#include "chrome/browser/extensions/extension_install_prompt_test_helper.h" |
#include "chrome/browser/ui/browser.h" |
-#include "chrome/browser/ui/browser_window.h" |
#include "chrome/browser/ui/tabs/tab_strip_model.h" |
#include "chrome/browser/ui/webui/extensions/extension_settings_handler.h" |
#include "chrome/common/extensions/extension_test_util.h" |
@@ -27,7 +26,6 @@ |
#include "ui/views/controls/scroll_view.h" |
#include "ui/views/view.h" |
#include "ui/views/widget/widget.h" |
-#include "ui/views/window/dialog_client_view.h" |
using extensions::PermissionIDSet; |
using extensions::PermissionMessage; |
@@ -154,20 +152,6 @@ |
ExtensionInstallPrompt::INSTALL_PROMPT) {} |
~ExtensionInstallDialogViewTest() override {} |
- views::DialogDelegateView* CreateAndShowPrompt( |
- ExtensionInstallPromptTestHelper* helper) { |
- scoped_ptr<ExtensionInstallDialogView> dialog( |
- new ExtensionInstallDialogView(profile(), web_contents(), |
- helper->GetCallback(), CreatePrompt())); |
- views::DialogDelegateView* delegate_view = dialog.get(); |
- |
- views::Widget* modal_dialog = views::DialogDelegate::CreateDialogWidget( |
- dialog.release(), nullptr, browser()->window()->GetNativeWindow()); |
- modal_dialog->Show(); |
- |
- return delegate_view; |
- } |
- |
private: |
DISALLOW_COPY_AND_ASSIGN(ExtensionInstallDialogViewTest); |
}; |
@@ -176,25 +160,46 @@ |
// cancel the install. |
IN_PROC_BROWSER_TEST_F(ExtensionInstallDialogViewTest, NotifyDelegate) { |
{ |
- // User presses install. |
ExtensionInstallPromptTestHelper helper; |
- views::DialogDelegateView* delegate_view = CreateAndShowPrompt(&helper); |
- delegate_view->GetDialogClientView()->AcceptWindow(); |
+ scoped_ptr<ExtensionInstallDialogView> dialog( |
+ new ExtensionInstallDialogView(profile(), web_contents(), |
+ helper.GetCallback(), |
+ CreatePrompt())); |
+ views::DialogDelegateView* delegate_view = dialog.get(); |
+ |
+ delegate_view->Accept(); |
+ delegate_view->OnClosed(); |
+ dialog.reset(); |
+ |
EXPECT_EQ(ExtensionInstallPrompt::Result::ACCEPTED, helper.result()); |
} |
+ |
{ |
- // User presses cancel. |
+ // The user cancels the install. |
ExtensionInstallPromptTestHelper helper; |
- views::DialogDelegateView* delegate_view = CreateAndShowPrompt(&helper); |
- delegate_view->GetDialogClientView()->CancelWindow(); |
+ scoped_ptr<ExtensionInstallDialogView> dialog( |
+ new ExtensionInstallDialogView(profile(), web_contents(), |
+ helper.GetCallback(), |
+ CreatePrompt())); |
+ views::DialogDelegateView* delegate_view = dialog.get(); |
+ |
+ delegate_view->Cancel(); |
+ delegate_view->OnClosed(); |
+ dialog.reset(); |
+ |
EXPECT_EQ(ExtensionInstallPrompt::Result::USER_CANCELED, helper.result()); |
} |
+ |
{ |
- // Dialog is closed without the user explicitly choosing to proceed or |
- // cancel. |
+ // Corner case: Dialog is closed without the user explicitly choosing to |
+ // proceed or cancel. |
ExtensionInstallPromptTestHelper helper; |
- views::DialogDelegateView* delegate_view = CreateAndShowPrompt(&helper); |
- delegate_view->GetWidget()->Close(); |
+ scoped_ptr<ExtensionInstallDialogView> dialog( |
+ new ExtensionInstallDialogView(profile(), web_contents(), |
+ helper.GetCallback(), |
+ CreatePrompt())); |
+ dialog.reset(); |
+ |
// TODO(devlin): Should this be ABORTED? |
EXPECT_EQ(ExtensionInstallPrompt::Result::USER_CANCELED, helper.result()); |
} |