| Index: chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc
|
| diff --git a/chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc b/chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc
|
| index b4355bad67064e56b2b36617bfb9f90105d86ccc..c24d752825405fef6245f05e0c4e4ef9dbf68e79 100644
|
| --- a/chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc
|
| +++ b/chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc
|
| @@ -11,7 +11,10 @@
|
| #include "chrome/browser/ui/browser_dialogs.h"
|
| #include "chrome/browser/ui/tabs/tab_strip_model.h"
|
| #include "chrome/test/base/ui_test_utils.h"
|
| +#include "content/public/browser/page_navigator.h"
|
| +#include "content/public/browser/web_contents.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| +#include "ui/base/window_open_disposition.h"
|
|
|
| MockTabModalConfirmDialogDelegate::MockTabModalConfirmDialogDelegate(
|
| Delegate* delegate)
|
| @@ -39,11 +42,17 @@ void MockTabModalConfirmDialogDelegate::OnCanceled() {
|
| delegate_->OnCanceled();
|
| }
|
|
|
| +void MockTabModalConfirmDialogDelegate::OnClosed() {
|
| + if (delegate_)
|
| + delegate_->OnClosed();
|
| +}
|
| +
|
| TabModalConfirmDialogTest::TabModalConfirmDialogTest()
|
| : delegate_(NULL),
|
| dialog_(NULL),
|
| accepted_count_(0),
|
| - canceled_count_(0) {
|
| + canceled_count_(0),
|
| + closed_count_(0) {
|
| }
|
|
|
| void TabModalConfirmDialogTest::SetUpOnMainThread() {
|
| @@ -65,22 +74,49 @@ void TabModalConfirmDialogTest::OnCanceled() {
|
| ++canceled_count_;
|
| }
|
|
|
| +void TabModalConfirmDialogTest::OnClosed() {
|
| + ++closed_count_;
|
| +}
|
| +
|
| IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, Accept) {
|
| dialog_->AcceptTabModalDialog();
|
| EXPECT_EQ(1, accepted_count_);
|
| EXPECT_EQ(0, canceled_count_);
|
| + EXPECT_EQ(0, closed_count_);
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, Cancel) {
|
| dialog_->CancelTabModalDialog();
|
| EXPECT_EQ(0, accepted_count_);
|
| EXPECT_EQ(1, canceled_count_);
|
| + EXPECT_EQ(0, closed_count_);
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, CancelSelf) {
|
| delegate_->Cancel();
|
| EXPECT_EQ(0, accepted_count_);
|
| EXPECT_EQ(1, canceled_count_);
|
| + EXPECT_EQ(0, closed_count_);
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, Close) {
|
| + dialog_->CloseDialog();
|
| + EXPECT_EQ(0, accepted_count_);
|
| + EXPECT_EQ(0, canceled_count_);
|
| + EXPECT_EQ(1, closed_count_);
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, Navigate) {
|
| + content::OpenURLParams params(GURL("about:blank"),
|
| + content::Referrer(),
|
| + CURRENT_TAB,
|
| + content::PAGE_TRANSITION_LINK,
|
| + false);
|
| + browser()->tab_strip_model()->GetActiveWebContents()->OpenURL(params);
|
| +
|
| + EXPECT_EQ(0, accepted_count_);
|
| + EXPECT_EQ(0, canceled_count_);
|
| + EXPECT_EQ(1, closed_count_);
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, Quit) {
|
| @@ -88,5 +124,6 @@ IN_PROC_BROWSER_TEST_F(TabModalConfirmDialogTest, Quit) {
|
| base::Bind(&chrome::AttemptExit));
|
| content::RunMessageLoop();
|
| EXPECT_EQ(0, accepted_count_);
|
| - EXPECT_EQ(1, canceled_count_);
|
| + EXPECT_EQ(0, canceled_count_);
|
| + EXPECT_EQ(1, closed_count_);
|
| }
|
|
|