1 // Copyright (c) 2013 Intel Corporation. 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/strings/utf_string_conversions.h"
6 #include "content/public/browser/web_contents.h"
7 #include "content/public/test/test_utils.h"
8 #include "net/base/net_util.h"
9 #include "xwalk/application/browser/application.h"
10 #include "xwalk/application/browser/application_service.h"
11 #include "xwalk/application/browser/application_system.h"
12 #include "xwalk/application/common/constants.h"
13 #include "xwalk/application/test/application_browsertest.h"
14 #include "xwalk/application/test/application_testapi.h"
15 #include "xwalk/runtime/browser/runtime.h"
16 #include "xwalk/runtime/browser/xwalk_runner.h"
18 using xwalk::application::Application;
20 class ApplicationMainDocumentBrowserTest: public ApplicationBrowserTest {
23 // Verifies the runtime creation when main document is used.
24 IN_PROC_BROWSER_TEST_F(ApplicationMainDocumentBrowserTest, MainDocument) {
25 xwalk::application::ApplicationService* service =
26 xwalk::XWalkRunner::GetInstance()->app_system()->application_service();
27 Application* app = service->Launch(
28 test_data_dir_.Append(FILE_PATH_LITERAL("main_document")));
30 // Wait for app is fully loaded.
31 test_runner_->WaitForTestNotification();
34 app->data()->GetResourceURL(
35 xwalk::application::kGeneratedMainDocumentFilename);
36 xwalk::Runtime* main_runtime = app->GetMainDocumentRuntime();
37 ASSERT_TRUE(main_runtime);
38 // Check main document URL.
39 ASSERT_EQ(main_runtime->web_contents()->GetURL(), generated_url);
40 ASSERT_TRUE(!main_runtime->window());