| Index: chrome/browser/ui/views/extensions/extension_message_bubble_view_browsertest.cc
|
| diff --git a/chrome/browser/ui/views/extensions/extension_message_bubble_view_browsertest.cc b/chrome/browser/ui/views/extensions/extension_message_bubble_view_browsertest.cc
|
| index e25e4e55067170457c1bdc5d35d5b3e4a9154a01..9d03d322a1da5b9e7e5c630c07534387a24fdf87 100644
|
| --- a/chrome/browser/ui/views/extensions/extension_message_bubble_view_browsertest.cc
|
| +++ b/chrome/browser/ui/views/extensions/extension_message_bubble_view_browsertest.cc
|
| @@ -8,8 +8,12 @@
|
| #include "chrome/browser/ui/views/frame/browser_view.h"
|
| #include "chrome/browser/ui/views/toolbar/app_menu_button.h"
|
| #include "chrome/browser/ui/views/toolbar/browser_actions_container.h"
|
| +#include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h"
|
| #include "chrome/browser/ui/views/toolbar/toolbar_view.h"
|
| #include "ui/views/bubble/bubble_dialog_delegate.h"
|
| +#include "ui/views/controls/link.h"
|
| +#include "ui/views/controls/link_listener.h"
|
| +#include "ui/views/window/dialog_client_view.h"
|
|
|
| namespace {
|
|
|
| @@ -18,6 +22,11 @@ ToolbarView* GetToolbarViewForBrowser(Browser* browser) {
|
| return BrowserView::GetBrowserViewForBrowser(browser)->toolbar();
|
| }
|
|
|
| +ToolbarActionsBarBubbleViews* GetBubbleForBrowser(Browser* browser) {
|
| + return static_cast<ToolbarActionsBarBubbleViews*>(
|
| + GetToolbarViewForBrowser(browser)->browser_actions()->active_bubble());
|
| +}
|
| +
|
| // Checks that the |bubble| is using the |expected_reference_view|, and is in
|
| // approximately the correct position.
|
| void CheckBubbleAndReferenceView(views::BubbleDialogDelegateView* bubble,
|
| @@ -56,6 +65,9 @@ class ExtensionMessageBubbleViewBrowserTest
|
| void CheckBubbleNative(Browser* browser, AnchorPosition anchor) override;
|
| void CloseBubbleNative(Browser* browser) override;
|
| void CheckBubbleIsNotPresentNative(Browser* browser) override;
|
| + void ClickLearnMoreButton(Browser* browser) override;
|
| + void ClickActionButton(Browser* browser) override;
|
| + void ClickDismissButton(Browser* browser) override;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ExtensionMessageBubbleViewBrowserTest);
|
| };
|
| @@ -105,6 +117,25 @@ void ExtensionMessageBubbleViewBrowserTest::CheckBubbleIsNotPresentNative(
|
| GetToolbarViewForBrowser(browser)->browser_actions()->active_bubble());
|
| }
|
|
|
| +void ExtensionMessageBubbleViewBrowserTest::ClickLearnMoreButton(
|
| + Browser* browser) {
|
| + ToolbarActionsBarBubbleViews* bubble = GetBubbleForBrowser(browser);
|
| + static_cast<views::LinkListener*>(bubble)->LinkClicked(
|
| + const_cast<views::Link*>(bubble->learn_more_button()), 0);
|
| +}
|
| +
|
| +void ExtensionMessageBubbleViewBrowserTest::ClickActionButton(
|
| + Browser* browser) {
|
| + ToolbarActionsBarBubbleViews* bubble = GetBubbleForBrowser(browser);
|
| + bubble->GetDialogClientView()->AcceptWindow();
|
| +}
|
| +
|
| +void ExtensionMessageBubbleViewBrowserTest::ClickDismissButton(
|
| + Browser* browser) {
|
| + ToolbarActionsBarBubbleViews* bubble = GetBubbleForBrowser(browser);
|
| + bubble->GetDialogClientView()->CancelWindow();
|
| +}
|
| +
|
| IN_PROC_BROWSER_TEST_F(ExtensionMessageBubbleViewBrowserTest,
|
| ExtensionBubbleAnchoredToExtensionAction) {
|
| TestBubbleAnchoredToExtensionAction();
|
| @@ -163,3 +194,18 @@ IN_PROC_BROWSER_TEST_F(ExtensionMessageBubbleViewBrowserTest,
|
| TestBubbleWithMultipleWindows) {
|
| TestBubbleWithMultipleWindows();
|
| }
|
| +
|
| +IN_PROC_BROWSER_TEST_F(ExtensionMessageBubbleViewBrowserTest,
|
| + TestClickingLearnMoreButton) {
|
| + TestClickingLearnMoreButton();
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(ExtensionMessageBubbleViewBrowserTest,
|
| + TestClickingActionButton) {
|
| + TestClickingActionButton();
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(ExtensionMessageBubbleViewBrowserTest,
|
| + TestClickingDismissButton) {
|
| + TestClickingDismissButton();
|
| +}
|
|
|