Index: chrome/browser/devtools/devtools_sanity_browsertest.cc |
diff --git a/chrome/browser/devtools/devtools_sanity_browsertest.cc b/chrome/browser/devtools/devtools_sanity_browsertest.cc |
index e8500cfe6965e208ee5a56644bc5b3a6f0e8b0ad..c489ab6b1ad77d97125eb0683122c1fb4cbd9187 100644 |
--- a/chrome/browser/devtools/devtools_sanity_browsertest.cc |
+++ b/chrome/browser/devtools/devtools_sanity_browsertest.cc |
@@ -27,6 +27,7 @@ |
#include "chrome/browser/ui/tabs/tab_strip_model.h" |
#include "chrome/common/chrome_paths.h" |
#include "chrome/common/chrome_switches.h" |
+#include "chrome/common/pref_names.h" |
#include "chrome/common/url_constants.h" |
#include "chrome/test/base/in_process_browser_test.h" |
#include "chrome/test/base/test_switches.h" |
@@ -135,6 +136,16 @@ class DevToolsSanityTest : public InProcessBrowserTest { |
is_docked); |
} |
+ void OpenDevToolsWindowAndAgentHost(const std::string& test_page) { |
+ ASSERT_TRUE(test_server()->Start()); |
+ LoadTestPage(test_page); |
+ content::WebContents* web_contents = GetInspectedTab(); |
+ scoped_refptr<content::DevToolsAgentHost> agent( |
+ content::DevToolsAgentHost::GetOrCreateFor(web_contents)); |
+ DevToolsWindow::OpenDevToolsWindow(web_contents); |
+ window_ = DevToolsWindow::FindDevToolsWindow(agent.get()); |
+ } |
+ |
WebContents* GetInspectedTab() { |
return browser()->tab_strip_model()->GetWebContentsAt(0); |
} |
@@ -151,6 +162,13 @@ class DevToolsSanityTest : public InProcessBrowserTest { |
return DevToolsWindowTesting::Get(window_)->toolbox_web_contents(); |
} |
+ void SetPolicyDevToolsDisabled(bool value) { |
+ browser()->profile()->GetPrefs()->SetBoolean(prefs::kDevToolsDisabled, |
+ value); |
+ } |
+ |
+ bool WindowExists() { return window_; } |
+ |
DevToolsWindow* window_; |
}; |
@@ -873,6 +891,18 @@ IN_PROC_BROWSER_TEST_F(DevToolsSanityTest, TestPageWithNoJavaScript) { |
CloseDevToolsWindow(); |
} |
+IN_PROC_BROWSER_TEST_F(DevToolsSanityTest, PolicyTrue) { |
dgozman
2015/03/10 05:43:23
Let's not reuse DevToolsSanityTest here, since you
|
+ SetPolicyDevToolsDisabled(true); |
+ OpenDevToolsWindowAndAgentHost(kDebuggerTestPage); |
+ ASSERT_FALSE(WindowExists()); |
+} |
+ |
+IN_PROC_BROWSER_TEST_F(DevToolsSanityTest, PolicyFalse) { |
+ SetPolicyDevToolsDisabled(false); |
+ OpenDevToolsWindowAndAgentHost(kDebuggerTestPage); |
+ ASSERT_TRUE(WindowExists()); |
+} |
+ |
IN_PROC_BROWSER_TEST_F(WorkerDevToolsSanityTest, InspectSharedWorker) { |
#if defined(OS_WIN) && defined(USE_ASH) |
// Disable this test in Metro+Ash for now (http://crbug.com/262796). |