Chromium Code Reviews| Index: chrome/browser/chromeos/login/ui/login_web_dialog_browsertest.cc |
| diff --git a/chrome/browser/chromeos/login/ui/login_web_dialog_browsertest.cc b/chrome/browser/chromeos/login/ui/login_web_dialog_browsertest.cc |
| index 2ae57edb1cb99e57b0000e486da655add513386c..86655af6370425e180feb6fb0d826b1ce744216a 100644 |
| --- a/chrome/browser/chromeos/login/ui/login_web_dialog_browsertest.cc |
| +++ b/chrome/browser/chromeos/login/ui/login_web_dialog_browsertest.cc |
| @@ -11,25 +11,37 @@ |
| #include "services/ui/public/interfaces/window_manager_constants.mojom.h" |
| #include "ui/aura/client/aura_constants.h" |
| #include "ui/aura/window.h" |
| -#include "ui/wm/public/activation_client.h" |
| +#include "ui/events/test/event_generator.h" |
| +#include "ui/views/test/widget_test.h" |
| namespace chromeos { |
| -typedef InProcessBrowserTest LoginWebDialogTest; |
| +using LoginWebDialogTest = InProcessBrowserTest; |
| -// Test that LoginWebDialog is not minimizable. |
| +// Tests that LoginWebDialog is not minimizable. |
| IN_PROC_BROWSER_TEST_F(LoginWebDialogTest, CannotMinimize) { |
| LoginWebDialog* dialog = new LoginWebDialog( |
| browser()->profile(), nullptr, nullptr, base::string16(), GURL()); |
| dialog->Show(); |
| - |
| - aura::client::ActivationClient* activation_client = |
| - aura::client::GetActivationClient( |
| - ash::Shell::Get()->GetPrimaryRootWindow()); |
| - aura::Window* window = activation_client->GetActiveWindow(); |
| + aura::Window* window = dialog->get_dialog_window_for_test(); |
| ASSERT_TRUE(window); |
| EXPECT_EQ(0, window->GetProperty(aura::client::kResizeBehaviorKey) & |
| ui::mojom::kResizeBehaviorCanMinimize); |
| } |
| +// Tests that LoginWebDialog can be closed by 'Shift + BrowserBack' accelerator. |
| +IN_PROC_BROWSER_TEST_F(LoginWebDialogTest, CloseDialogByAccelerator) { |
| + LoginWebDialog* dialog = new LoginWebDialog( |
| + browser()->profile(), nullptr, nullptr, base::string16(), GURL()); |
| + dialog->Show(); |
| + aura::Window* window = dialog->get_dialog_window_for_test(); |
|
xiyuan
2017/05/12 22:29:57
nit: aura::Window* -> gfx::NativeWindow
Qiang(Joe) Xu
2017/05/12 22:39:32
Done.
|
| + ASSERT_TRUE(window); |
| + views::Widget* widget = views::Widget::GetWidgetForNativeWindow(window); |
| + views::test::WidgetClosingObserver closing_observer(widget); |
| + ui::test::EventGenerator generator(ash::Shell::GetPrimaryRootWindow()); |
| + generator.PressKey(ui::VKEY_BROWSER_BACK, ui::EF_SHIFT_DOWN); |
| + closing_observer.Wait(); |
| + EXPECT_TRUE(closing_observer.widget_closed()); |
| +} |
| + |
| } // namespace chromeos |