diff options
author | bauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-04 16:19:10 +0000 |
---|---|---|
committer | bauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-04 16:19:10 +0000 |
commit | e0801156e169e1e91a73a6d3aa5dc7b22dae1cb3 (patch) | |
tree | 5c674776366f1de7cd404df5cbe6064bd192eab7 /chrome/browser/extensions/extension_managed_mode_apitest.cc | |
parent | 159f06c0c7d7c88c079c2247860018756efb0725 (diff) | |
download | chromium_src-e0801156e169e1e91a73a6d3aa5dc7b22dae1cb3.zip chromium_src-e0801156e169e1e91a73a6d3aa5dc7b22dae1cb3.tar.gz chromium_src-e0801156e169e1e91a73a6d3aa5dc7b22dae1cb3.tar.bz2 |
Fix extension event name for managedModePrivate.onChange (whoops).
Add an API test for the event.
BUG=120635
TEST=ExtensionApiTest.ManagedModeOnChange
Review URL: https://chromiumcodereview.appspot.com/10447141
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140298 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_managed_mode_apitest.cc')
-rw-r--r-- | chrome/browser/extensions/extension_managed_mode_apitest.cc | 35 |
1 files changed, 31 insertions, 4 deletions
diff --git a/chrome/browser/extensions/extension_managed_mode_apitest.cc b/chrome/browser/extensions/extension_managed_mode_apitest.cc index 3085a4f..d8d1c07 100644 --- a/chrome/browser/extensions/extension_managed_mode_apitest.cc +++ b/chrome/browser/extensions/extension_managed_mode_apitest.cc @@ -5,15 +5,42 @@ #include "chrome/browser/managed_mode.h" #include "chrome/browser/extensions/extension_apitest.h" #include "chrome/common/chrome_switches.h" +#include "chrome/common/extensions/extension.h" +#include "chrome/test/base/ui_test_utils.h" // Tests enabling and querying managed mode. IN_PROC_BROWSER_TEST_F(ExtensionApiTest, ManagedModeGetAndEnable) { - CommandLine::ForCurrentProcess()->AppendSwitch( - switches::kEnableExperimentalExtensionApis); - ASSERT_FALSE(ManagedMode::IsInManagedMode()); - ASSERT_TRUE(RunComponentExtensionTest("managedMode")) << message_; + ASSERT_TRUE(RunComponentExtensionTest("managed_mode/get_enter")) << message_; EXPECT_TRUE(ManagedMode::IsInManagedMode()); } + +// Tests the event when entering or leaving managed mode. +IN_PROC_BROWSER_TEST_F(ExtensionApiTest, ManagedModeOnChange) { + ASSERT_FALSE(ManagedMode::IsInManagedMode()); + + // We can't just call RunComponentExtension() like above, because we need to + // fire the event while the page is waiting. + FilePath extension_path = + test_data_dir_.AppendASCII("managed_mode/on_change"); + const extensions::Extension* extension = + LoadExtensionAsComponent(extension_path); + ASSERT_TRUE(extension) << "Failed to load extension."; + + ResultCatcher catcher; + // Tell the test what values for the |onChange| event to expect. + std::string page_url = "test.html?expect=true,false"; + ui_test_utils::NavigateToURL(browser(), + extension->GetResourceURL(page_url)); + + // Fire the extension event when entering managed mode. We directly call + // SetInManagedMode() to bypass any confirmation dialogs etc. + ManagedMode::GetInstance()->SetInManagedMode(true); + + // Fire the extension event when leaving managed mode. + ManagedMode::GetInstance()->SetInManagedMode(false); + + ASSERT_TRUE(catcher.GetNextResult()) << catcher.message(); +} |