Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(204)

Unified Diff: chrome/browser/extensions/extension_webui_apitest.cc

Issue 453613002: Implement support for <extensionoptions> embedding in WebUI (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add left brace Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_webui_apitest.cc
diff --git a/chrome/browser/extensions/extension_webui_apitest.cc b/chrome/browser/extensions/extension_webui_apitest.cc
index dcd40d3c12bc7624ac90edf889e0d5cacbd57b3b..156c6c02d2deadbcada75312d9c470cc9492fe1f 100644
--- a/chrome/browser/extensions/extension_webui_apitest.cc
+++ b/chrome/browser/extensions/extension_webui_apitest.cc
@@ -18,6 +18,8 @@
#include "extensions/browser/event_router.h"
#include "extensions/common/api/test.h"
#include "extensions/common/extension.h"
+#include "extensions/common/feature_switch.h"
+#include "extensions/common/switches.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace extensions {
@@ -108,6 +110,18 @@ class ExtensionWebUITest : public ExtensionApiTest {
base::Bind(&FindFrame, frame_url, &frame_host));
return frame_host;
}
+
+ virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
+ FeatureSwitch::ScopedOverride enable_options(
+ FeatureSwitch::embedded_extension_options(), true);
+ // Need to add a command line flag as well as a FeatureSwitch because the
+ // FeatureSwitch is not copied over to the renderer process from the
+ // browser process.
+ command_line->AppendSwitch(switches::kEnableEmbeddedExtensionOptions);
+ ExtensionApiTest::SetUpCommandLine(command_line);
+ }
+
+ scoped_ptr<FeatureSwitch::ScopedOverride> enable_options_;
};
IN_PROC_BROWSER_TEST_F(ExtensionWebUITest, SanityCheckAvailableAPIs) {
@@ -167,6 +181,23 @@ IN_PROC_BROWSER_TEST_F(ExtensionWebUITest, RuntimeLastError) {
EXPECT_EQ("true", listener->message());
}
+IN_PROC_BROWSER_TEST_F(ExtensionWebUITest, CanEmbedExtensionOptions) {
+ scoped_ptr<ExtensionTestMessageListener> listener(
+ new ExtensionTestMessageListener("ready", true));
+
+ const Extension* extension = InstallExtension(
+ test_data_dir_.AppendASCII("extension_options").AppendASCII("embed_self"),
+ 1);
+ ASSERT_TRUE(extension);
+
+ ASSERT_TRUE(RunTestOnExtensions("can_embed_extension_options.js"));
+
+ ASSERT_TRUE(listener->WaitUntilSatisfied());
+ listener->Reply(extension->id());
+ listener.reset(new ExtensionTestMessageListener("guest loaded", false));
+ ASSERT_TRUE(listener->WaitUntilSatisfied());
+}
+
} // namespace
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698