| Index: chrome/test/data/webui/hung_renderer_dialog_ui_test-inl.h
|
| diff --git a/chrome/test/data/webui/hung_renderer_dialog_ui_test-inl.h b/chrome/test/data/webui/hung_renderer_dialog_ui_test-inl.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..6811805f6bf47aa3c72368e80c0d482b715368b5
|
| --- /dev/null
|
| +++ b/chrome/test/data/webui/hung_renderer_dialog_ui_test-inl.h
|
| @@ -0,0 +1,53 @@
|
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "chrome/browser/ui/browser.h"
|
| +#include "chrome/browser/ui/webui/chrome_web_ui.h"
|
| +#include "chrome/browser/ui/webui/hung_renderer_dialog.h"
|
| +#include "chrome/browser/ui/webui/web_ui_browsertest.h"
|
| +#include "chrome/common/url_constants.h"
|
| +#include "chrome/test/base/test_html_dialog_observer.h"
|
| +#include "content/browser/renderer_host/render_view_host.h"
|
| +#include "content/browser/tab_contents/tab_contents.h"
|
| +#include "content/browser/webui/web_ui.h"
|
| +
|
| +// Test framework for chrome/test/data/webui/hung_renderer_dialog_test.js.
|
| +class HungRendererDialogUITest : public WebUIBrowserTest {
|
| + public:
|
| + HungRendererDialogUITest();
|
| + virtual ~HungRendererDialogUITest();
|
| +
|
| + private:
|
| + virtual void SetUpOnMainThread() OVERRIDE;
|
| +};
|
| +
|
| +void HungRendererDialogUITest::SetUpOnMainThread() {
|
| + // Force the flag so that we will use the WebUI version of the Dialog.
|
| + ChromeWebUI::OverrideMoreWebUI(true);
|
| +
|
| + // Choose which tab contents to report as hung. In this case, the default
|
| + // tab contents will be about:blank.
|
| + ASSERT_TRUE(browser() != NULL);
|
| + TabContents* tab_contents = browser()->GetSelectedTabContents();
|
| +
|
| + // The TestHtmlDialogObserver will catch our dialog when it gets created.
|
| + TestHtmlDialogObserver dialog_observer;
|
| +
|
| + // Show a disabled Hung Renderer Dialog that won't kill processes or restart
|
| + // hang timers.
|
| + HungRendererDialog::ShowHungRendererDialogInternal(tab_contents, false);
|
| +
|
| + // Now we can get the WebUI object from the observer, and make some details
|
| + // about our test available to the JavaScript.
|
| + WebUI* webui = dialog_observer.GetWebUI();
|
| + webui->tab_contents()->render_view_host()->SetWebUIProperty(
|
| + "expectedUrl", chrome::kChromeUIHungRendererDialogURL);
|
| + webui->tab_contents()->render_view_host()->SetWebUIProperty(
|
| + "expectedTitle", "about:blank");
|
| +
|
| + // Tell the test which WebUI instance we are dealing with and complete
|
| + // initialization of this test.
|
| + SetWebUIInstance(webui);
|
| + WebUIBrowserTest::SetUpOnMainThread();
|
| +}
|
|
|