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

Unified Diff: chrome/common/extensions/manifest_handlers/ui_overrides_handler_unittest.cc

Issue 183883033: Move bookmarks_ui manifest key from chrome_settings_overrides to chrome_ui_overrides (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 9 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/manifest_handlers/ui_overrides_handler_unittest.cc
diff --git a/chrome/common/extensions/manifest_handlers/ui_overrides_handler_unittest.cc b/chrome/common/extensions/manifest_handlers/ui_overrides_handler_unittest.cc
index 2c3ffd97be7468c7b37f55a5b830f42b42c64761..da5ad3a1c0137807fa4d84b0b9f5e45d5abe5b8a 100644
--- a/chrome/common/extensions/manifest_handlers/ui_overrides_handler_unittest.cc
+++ b/chrome/common/extensions/manifest_handlers/ui_overrides_handler_unittest.cc
@@ -4,10 +4,12 @@
#include "chrome/common/extensions/manifest_handlers/ui_overrides_handler.h"
+#include "base/command_line.h"
#include "base/json/json_string_value_serializer.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/common/extensions/features/feature_channel.h"
#include "chrome/common/extensions/manifest_url_handler.h"
+#include "extensions/common/error_utils.h"
#include "extensions/common/extension.h"
#include "extensions/common/manifest_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -17,50 +19,37 @@ namespace {
const char kManifest[] = "{"
" \"version\" : \"1.0.0.0\","
" \"name\" : \"Test\","
- " \"chrome_settings_overrides\" : {"
- " \"homepage\" : \"http://www.homepage.com\","
- " \"search_provider\" : {"
- " \"name\" : \"first\","
- " \"keyword\" : \"firstkey\","
- " \"search_url\" : \"http://www.foo.com/s?q={searchTerms}\","
- " \"favicon_url\" : \"http://www.foo.com/favicon.ico\","
- " \"suggest_url\" : \"http://www.foo.com/s?q={searchTerms}\","
- " \"encoding\" : \"UTF-8\","
- " \"is_default\" : true"
- " },"
- " \"startup_pages\" : [\"http://www.startup.com\"]"
+ " \"chrome_ui_overrides\" : {"
+ " \"bookmarks_ui\" : {"
+ " \"remove_button\" : true,"
+ " \"remove_bookmark_shortcut\" : true"
+ " }"
" }"
"}";
const char kBrokenManifest[] = "{"
" \"version\" : \"1.0.0.0\","
" \"name\" : \"Test\","
- " \"chrome_settings_overrides\" : {"
- " \"homepage\" : \"{invalid}\","
- " \"search_provider\" : {"
- " \"name\" : \"first\","
- " \"keyword\" : \"firstkey\","
- " \"search_url\" : \"{invalid}/s?q={searchTerms}\","
- " \"favicon_url\" : \"{invalid}/favicon.ico\","
- " \"encoding\" : \"UTF-8\","
- " \"is_default\" : true"
- " },"
- " \"startup_pages\" : [\"{invalid}\"]"
+ " \"chrome_ui_overrides\" : {"
" }"
"}";
-using extensions::api::manifest_types::ChromeSettingsOverrides;
+using extensions::api::manifest_types::ChromeUIOverrides;
using extensions::Extension;
using extensions::Manifest;
-using extensions::SettingsOverrides;
+using extensions::UIOverrides;
namespace manifest_keys = extensions::manifest_keys;
-class OverrideSettingsTest : public testing::Test {
+class UIOverrideTest : public testing::Test {
};
-TEST_F(OverrideSettingsTest, ParseManifest) {
+TEST_F(UIOverrideTest, ParseManifest) {
extensions::ScopedCurrentChannel channel(chrome::VersionInfo::CHANNEL_DEV);
+ // This functionality requires a feature flag.
+ CommandLine::ForCurrentProcess()->AppendSwitchASCII(
+ "--enable-override-bookmarks-ui",
+ "1");
std::string manifest(kManifest);
JSONStringValueSerializer json(&manifest);
std::string error;
@@ -73,38 +62,23 @@ TEST_F(OverrideSettingsTest, ParseManifest) {
*static_cast<base::DictionaryValue*>(root.get()),
Extension::NO_FLAGS,
&error);
- ASSERT_TRUE(extension);
-#if defined(OS_WIN)
- ASSERT_TRUE(extension->manifest()->HasPath(manifest_keys::kSettingsOverride));
+ ASSERT_TRUE(extension) << error;
+ ASSERT_TRUE(extension->manifest()->HasPath(manifest_keys::kUIOverride));
- SettingsOverrides* settings_override = static_cast<SettingsOverrides*>(
- extension->GetManifestData(manifest_keys::kSettingsOverride));
- ASSERT_TRUE(settings_override);
- ASSERT_TRUE(settings_override->search_engine);
- EXPECT_TRUE(settings_override->search_engine->is_default);
- const ChromeSettingsOverrides::Search_provider* search_engine =
- settings_override->search_engine.get();
- EXPECT_EQ("first", search_engine->name);
- EXPECT_EQ("firstkey", search_engine->keyword);
- EXPECT_EQ("http://www.foo.com/s?q={searchTerms}", search_engine->search_url);
- EXPECT_EQ("http://www.foo.com/favicon.ico", search_engine->favicon_url);
- EXPECT_EQ("http://www.foo.com/s?q={searchTerms}",
- *search_engine->suggest_url);
- EXPECT_EQ("UTF-8", search_engine->encoding);
-
- EXPECT_EQ(std::vector<GURL>(1, GURL("http://www.startup.com")),
- settings_override->startup_pages);
-
- ASSERT_TRUE(settings_override->homepage);
- EXPECT_EQ(GURL("http://www.homepage.com"), *settings_override->homepage);
-#else
- EXPECT_FALSE(
- extension->manifest()->HasPath(manifest_keys::kSettingsOverride));
-#endif
+ UIOverrides* ui_override = static_cast<UIOverrides*>(
+ extension->GetManifestData(manifest_keys::kUIOverride));
+ ASSERT_TRUE(ui_override);
+ ASSERT_TRUE(ui_override->bookmarks_ui);
+ EXPECT_TRUE(ui_override->bookmarks_ui->remove_button);
+ EXPECT_TRUE(ui_override->bookmarks_ui->remove_bookmark_shortcut);
}
-TEST_F(OverrideSettingsTest, ParseBrokenManifest) {
+TEST_F(UIOverrideTest, ParseBrokenManifest) {
extensions::ScopedCurrentChannel channel(chrome::VersionInfo::CHANNEL_DEV);
+ // This functionality requires a feature flag.
+ CommandLine::ForCurrentProcess()->AppendSwitchASCII(
+ "--enable-override-bookmarks-ui",
+ "1");
std::string manifest(kBrokenManifest);
JSONStringValueSerializer json(&manifest);
std::string error;
@@ -117,16 +91,12 @@ TEST_F(OverrideSettingsTest, ParseBrokenManifest) {
*static_cast<base::DictionaryValue*>(root.get()),
Extension::NO_FLAGS,
&error);
-#if defined(OS_WIN)
EXPECT_FALSE(extension);
EXPECT_EQ(
- std::string(extensions::manifest_errors::kInvalidEmptySettingsOverrides),
+ extensions::ErrorUtils::FormatErrorMessage(
+ extensions::manifest_errors::kInvalidEmptyDictionary,
+ extensions::manifest_keys::kUIOverride),
error);
-#else
- EXPECT_TRUE(extension);
- EXPECT_FALSE(
- extension->manifest()->HasPath(manifest_keys::kSettingsOverride));
-#endif
}
} // namespace

Powered by Google App Engine
This is Rietveld 408576698