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

Side by Side Diff: chrome/browser/extensions/api/settings_overrides/settings_overrides_browsertest.cc

Issue 196663003: Introduce an extension parameter which is used to customize the extension. It's available for exter… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Forgotten manifest 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/prefs/pref_service.h" 5 #include "base/prefs/pref_service.h"
6 #include "base/run_loop.h" 6 #include "base/run_loop.h"
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "chrome/browser/extensions/extension_browsertest.h" 8 #include "chrome/browser/extensions/extension_browsertest.h"
9 #include "chrome/browser/prefs/session_startup_pref.h" 9 #include "chrome/browser/prefs/session_startup_pref.h"
10 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 SessionStartupPref::SetStartupPref(prefs, startup_pref); 61 SessionStartupPref::SetStartupPref(prefs, startup_pref);
62 TemplateURLService* url_service = 62 TemplateURLService* url_service =
63 TemplateURLServiceFactory::GetForProfile(profile()); 63 TemplateURLServiceFactory::GetForProfile(profile());
64 ASSERT_TRUE(url_service); 64 ASSERT_TRUE(url_service);
65 EXPECT_TRUE(VerifyTemplateURLServiceLoad(url_service)); 65 EXPECT_TRUE(VerifyTemplateURLServiceLoad(url_service));
66 TemplateURL* default_provider = url_service->GetDefaultSearchProvider(); 66 TemplateURL* default_provider = url_service->GetDefaultSearchProvider();
67 ASSERT_TRUE(default_provider); 67 ASSERT_TRUE(default_provider);
68 EXPECT_EQ(TemplateURL::NORMAL, default_provider->GetType()); 68 EXPECT_EQ(TemplateURL::NORMAL, default_provider->GetType());
69 69
70 #if defined(OS_WIN) 70 #if defined(OS_WIN)
71 const extensions::Extension* extension = LoadExtension( 71 const extensions::Extension* extension = LoadExtensionWithInstallParam(
72 test_data_dir_.AppendASCII("settings_override")); 72 test_data_dir_.AppendASCII("settings_override"),
73 kFlagEnableFileAccess,
74 "10");
73 ASSERT_TRUE(extension); 75 ASSERT_TRUE(extension);
74 EXPECT_EQ("http://www.homepage.com/", prefs->GetString(prefs::kHomePage)); 76 EXPECT_EQ("http://www.homepage.com?param=10",
77 prefs->GetString(prefs::kHomePage));
75 EXPECT_FALSE(prefs->GetBoolean(prefs::kHomePageIsNewTabPage)); 78 EXPECT_FALSE(prefs->GetBoolean(prefs::kHomePageIsNewTabPage));
76 startup_pref = SessionStartupPref::GetStartupPref(prefs); 79 startup_pref = SessionStartupPref::GetStartupPref(prefs);
77 EXPECT_EQ(SessionStartupPref::URLS, startup_pref.type); 80 EXPECT_EQ(SessionStartupPref::URLS, startup_pref.type);
78 EXPECT_EQ(std::vector<GURL>(1, GURL("http://www.startup.com")), 81 EXPECT_EQ(std::vector<GURL>(1, GURL("http://www.startup.com?param=10")),
79 startup_pref.urls); 82 startup_pref.urls);
80 TemplateURL* extension_provider = url_service->GetDefaultSearchProvider(); 83 TemplateURL* extension_provider = url_service->GetDefaultSearchProvider();
81 EXPECT_EQ(TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, 84 EXPECT_EQ(TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION,
82 extension_provider->GetType()); 85 extension_provider->GetType());
83 EXPECT_EQ(base::ASCIIToUTF16("name.de"), extension_provider->short_name()); 86 EXPECT_EQ(base::ASCIIToUTF16("name.de"), extension_provider->short_name());
84 EXPECT_EQ(base::ASCIIToUTF16("keyword.de"), extension_provider->keyword()); 87 EXPECT_EQ(base::ASCIIToUTF16("keyword.de"), extension_provider->keyword());
85 EXPECT_EQ("http://www.foo.de/s?q={searchTerms}", extension_provider->url()); 88 EXPECT_EQ("http://www.foo.de/s?q={searchTerms}&id=10",
86 EXPECT_EQ(GURL("http://www.foo.de/favicon.ico"), 89 extension_provider->url());
90 EXPECT_EQ(GURL("http://www.foo.de/favicon.ico?id=10"),
87 extension_provider->favicon_url()); 91 extension_provider->favicon_url());
88 EXPECT_EQ("http://www.foo.de/suggest?q={searchTerms}", 92 EXPECT_EQ("http://www.foo.de/suggest?q={searchTerms}&id=10",
89 extension_provider->suggestions_url()); 93 extension_provider->suggestions_url());
90 EXPECT_EQ("http://www.foo.de/instant?q={searchTerms}", 94 EXPECT_EQ("http://www.foo.de/instant?q={searchTerms}&id=10",
91 extension_provider->instant_url()); 95 extension_provider->instant_url());
92 EXPECT_EQ("http://www.foo.de/image?q={searchTerms}", 96 EXPECT_EQ("http://www.foo.de/image?q={searchTerms}&id=10",
93 extension_provider->image_url()); 97 extension_provider->image_url());
94 EXPECT_EQ("search_lang=de", extension_provider->search_url_post_params()); 98 EXPECT_EQ("search_lang=de", extension_provider->search_url_post_params());
95 EXPECT_EQ("suggest_lang=de", 99 EXPECT_EQ("suggest_lang=de",
96 extension_provider->suggestions_url_post_params()); 100 extension_provider->suggestions_url_post_params());
97 EXPECT_EQ("instant_lang=de", extension_provider->instant_url_post_params()); 101 EXPECT_EQ("instant_lang=de", extension_provider->instant_url_post_params());
98 EXPECT_EQ("image_lang=de", extension_provider->image_url_post_params()); 102 EXPECT_EQ("image_lang=de", extension_provider->image_url_post_params());
99 const std::string alternate_urls[] = { 103 const std::string alternate_urls[] = {
100 "http://www.moo.de/s?q={searchTerms}", 104 "http://www.moo.de/s?q={searchTerms}&id=10",
101 "http://www.noo.de/s?q={searchTerms}" 105 "http://www.noo.de/s?q={searchTerms}&id=10"};
102 };
103 EXPECT_EQ(std::vector<std::string>( 106 EXPECT_EQ(std::vector<std::string>(
104 alternate_urls, alternate_urls + arraysize(alternate_urls)), 107 alternate_urls, alternate_urls + arraysize(alternate_urls)),
105 extension_provider->alternate_urls()); 108 extension_provider->alternate_urls());
106 EXPECT_EQ(std::vector<std::string>(1, "UTF-8"), 109 EXPECT_EQ(std::vector<std::string>(1, "UTF-8"),
107 extension_provider->input_encodings()); 110 extension_provider->input_encodings());
108 111
109 UnloadExtension(extension->id()); 112 UnloadExtension(extension->id());
110 EXPECT_EQ("http://google.com/", prefs->GetString(prefs::kHomePage)); 113 EXPECT_EQ("http://google.com/", prefs->GetString(prefs::kHomePage));
111 EXPECT_TRUE(prefs->GetBoolean(prefs::kHomePageIsNewTabPage)); 114 EXPECT_TRUE(prefs->GetBoolean(prefs::kHomePageIsNewTabPage));
112 startup_pref = SessionStartupPref::GetStartupPref(prefs); 115 startup_pref = SessionStartupPref::GetStartupPref(prefs);
113 EXPECT_EQ(SessionStartupPref::LAST, startup_pref.type); 116 EXPECT_EQ(SessionStartupPref::LAST, startup_pref.type);
114 EXPECT_EQ(std::vector<GURL>(urls, urls + arraysize(urls)), startup_pref.urls); 117 EXPECT_EQ(std::vector<GURL>(urls, urls + arraysize(urls)), startup_pref.urls);
115 EXPECT_EQ(default_provider, url_service->GetDefaultSearchProvider()); 118 EXPECT_EQ(default_provider, url_service->GetDefaultSearchProvider());
116 #else 119 #else
117 const extensions::Extension* extension = 120 const extensions::Extension* extension =
118 LoadExtensionWithFlags(test_data_dir_.AppendASCII("settings_override"), 121 LoadExtensionWithFlags(test_data_dir_.AppendASCII("settings_override"),
119 kFlagIgnoreManifestWarnings); 122 kFlagIgnoreManifestWarnings);
120 ASSERT_TRUE(extension); 123 ASSERT_TRUE(extension);
121 ASSERT_EQ(1u, extension->install_warnings().size()); 124 ASSERT_EQ(1u, extension->install_warnings().size());
122 EXPECT_EQ(std::string( 125 EXPECT_EQ(std::string(
123 "'chrome_settings_overrides' " 126 "'chrome_settings_overrides' "
124 "is not allowed for specified platform."), 127 "is not allowed for specified platform."),
125 extension->install_warnings().front().message); 128 extension->install_warnings().front().message);
126 #endif 129 #endif
127 } 130 }
128 131
129 } // namespace 132 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698