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

Unified Diff: chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc

Issue 18179004: Dismiss action in tab modal dialogs. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test for Mac Created 7 years, 5 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/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 1ced79b1aed7850b3c1cf1759aeec7a5db1ac14d..148b8169f6c28a10fb2775a9dc719abf2dc43fe0 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(
content::WebContents* web_contents,
@@ -41,11 +44,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() {
@@ -68,22 +77,56 @@ 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, CloseSelf) {
+ delegate_->Close();
+ 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) {
@@ -91,5 +134,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_);
}
« no previous file with comments | « chrome/browser/ui/tab_modal_confirm_dialog_browsertest.h ('k') | chrome/browser/ui/tab_modal_confirm_dialog_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698