1 // Copyright 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 "base/logging.h"
6 #include "content/public/browser/notification_service.h"
7 #include "content/public/browser/web_contents.h"
8 #include "content/public/test/test_utils.h"
9 #include "extensions/browser/app_window/app_window.h"
10 #include "extensions/browser/app_window/app_window_registry.h"
11 #include "extensions/browser/notification_types.h"
12 #include "extensions/shell/test/shell_apitest.h"
15 #include "ui/aura/window.h"
18 namespace extensions
{
20 // Test that we can open an app window and wait for it to load.
21 IN_PROC_BROWSER_TEST_F(ShellApiTest
, Basic
) {
22 ASSERT_TRUE(RunAppTest("platform_app")) << message_
;
24 // A window was created.
25 AppWindow
* app_window
=
26 AppWindowRegistry::Get(browser_context())->app_windows().front();
27 ASSERT_TRUE(app_window
);
29 // TOOD(yoz): Test for focus on Cocoa.
30 // app_window->GetBaseWindow()->IsActive() is possible, although on Mac,
31 // focus changes are asynchronous, so interactive_ui_tests are required.
33 // The web contents have focus.
34 EXPECT_TRUE(app_window
->web_contents()->GetContentNativeView()->HasFocus());
38 } // namespace extensions