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

Unified Diff: chrome/common/extensions/api/commands/commands_manifest_unittest.cc

Issue 44553002: Enabling Commands API for Apps (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix test Created 7 years, 2 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/common/extensions/api/commands/commands_manifest_unittest.cc
diff --git a/chrome/common/extensions/api/commands/commands_manifest_unittest.cc b/chrome/common/extensions/api/commands/commands_manifest_unittest.cc
index 3d006b25844630d499b9f95f49a3703127825b00..a0eab03ef683cadb6b608345ff1a5582b9f8fd4f 100644
--- a/chrome/common/extensions/api/commands/commands_manifest_unittest.cc
+++ b/chrome/common/extensions/api/commands/commands_manifest_unittest.cc
@@ -8,6 +8,7 @@
#include "base/strings/string_util.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/extensions/api/commands/commands_handler.h"
+#include "chrome/common/extensions/features/feature_channel.h"
#include "extensions/common/manifest_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -93,4 +94,42 @@ TEST_F(CommandsManifestTest, BrowserActionSynthesizesCommand) {
ASSERT_EQ(ui::VKEY_UNKNOWN, command->accelerator().key_code());
}
+// This test makes sure that the "commands" feature and the "commands.global"
+// property behave as expected on dev and stable (enabled and working on dev,
+// not working on stable).
+TEST_F(CommandsManifestTest, ChannelTests) {
+ // This tests the following combinations.
+ // Ext+Command Stable : OK.
+ // Ext+Command+Global Stable : Property is silently ignored (expect success).
+ // App+Command Stable : NOT OK.
+ // App+Command+Global Stable : NOT OK.
+ {
+ std::string warning = "'commands' requires Google Chrome dev channel or "
+ "newer, but this is the stable channel.";
+ ScopedCurrentChannel channel(chrome::VersionInfo::CHANNEL_STABLE);
+ scoped_refptr<Extension> extension1 =
+ LoadAndExpectSuccess("command_ext.json");
+ scoped_refptr<Extension> extension2 =
+ LoadAndExpectSuccess("command_ext_global.json");
+ LoadAndExpectWarning("command_app.json", warning);
+ LoadAndExpectWarning("command_app_global.json", warning);
+ }
+
+ // Ext+Command Dev : OK.
+ // App+Command Dev : OK.
+ // Ext+Command+Global Dev : OK.
+ // App+Command+Global Dev : OK.
+ {
+ ScopedCurrentChannel channel(chrome::VersionInfo::CHANNEL_DEV);
+ scoped_refptr<Extension> extension1 =
+ LoadAndExpectSuccess("command_ext.json");
+ scoped_refptr<Extension> extension2 =
+ LoadAndExpectSuccess("command_app.json");
+ scoped_refptr<Extension> extension3 =
+ LoadAndExpectSuccess("command_ext_global.json");
+ scoped_refptr<Extension> extension4 =
+ LoadAndExpectSuccess("command_app_global.json");
+ }
+}
+
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698