1 // Copyright (c) 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/ui/views/location_bar/location_icon_view.h"
7 #include "base/command_line.h"
8 #include "chrome/browser/ui/views/frame/browser_view.h"
9 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
10 #include "chrome/browser/ui/views/toolbar/toolbar_view.h"
11 #include "chrome/browser/ui/views/website_settings/website_settings_popup_view.h"
12 #include "chrome/test/base/in_process_browser_test.h"
13 #include "chrome/test/base/interactive_test_utils.h"
14 #include "ui/aura/window.h"
18 typedef InProcessBrowserTest LocationIconViewTest
;
20 // Verify that clicking the location icon a second time hides the bubble.
21 IN_PROC_BROWSER_TEST_F(LocationIconViewTest
, HideOnSecondClick
) {
22 BrowserView
* browser_view
= BrowserView::GetBrowserViewForBrowser(browser());
23 views::View
* location_icon_view
=
24 browser_view
->GetToolbarView()->location_bar()->location_icon_view();
25 ASSERT_TRUE(location_icon_view
);
27 // Verify that clicking once shows the location icon bubble.
28 scoped_refptr
<content::MessageLoopRunner
> runner1
=
29 new content::MessageLoopRunner
;
30 ui_test_utils::MoveMouseToCenterAndPress(
33 ui_controls::DOWN
| ui_controls::UP
,
34 runner1
->QuitClosure());
37 EXPECT_TRUE(WebsiteSettingsPopupView::IsPopupShowing());
39 // Verify that clicking again doesn't reshow it.
40 scoped_refptr
<content::MessageLoopRunner
> runner2
=
41 new content::MessageLoopRunner
;
42 ui_test_utils::MoveMouseToCenterAndPress(
45 ui_controls::DOWN
| ui_controls::UP
,
46 runner2
->QuitClosure());
49 EXPECT_FALSE(WebsiteSettingsPopupView::IsPopupShowing());