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

Side by Side Diff: chrome/browser/extensions/extension_resource_request_policy_apitest.cc

Issue 11753009: Simplify ExecuteJavaScript* functions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Update prerender_browsertest.cc. Created 7 years, 11 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/logging.h" 5 #include "base/logging.h"
6 #include "chrome/browser/extensions/extension_apitest.h" 6 #include "chrome/browser/extensions/extension_apitest.h"
7 #include "chrome/browser/ui/browser.h" 7 #include "chrome/browser/ui/browser.h"
8 #include "chrome/browser/ui/browser_tabstrip.h" 8 #include "chrome/browser/ui/browser_tabstrip.h"
9 #include "chrome/common/chrome_switches.h" 9 #include "chrome/common/chrome_switches.h"
10 #include "chrome/test/base/ui_test_utils.h" 10 #include "chrome/test/base/ui_test_utils.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 make_host_a_com.SetHostStr(host_a); 43 make_host_a_com.SetHostStr(host_a);
44 44
45 std::string host_b("b.com"); 45 std::string host_b("b.com");
46 GURL::Replacements make_host_b_com; 46 GURL::Replacements make_host_b_com;
47 make_host_b_com.SetHostStr(host_b); 47 make_host_b_com.SetHostStr(host_b);
48 48
49 // A web host that has permission. 49 // A web host that has permission.
50 ui_test_utils::NavigateToURL( 50 ui_test_utils::NavigateToURL(
51 browser(), web_resource.ReplaceComponents(make_host_a_com)); 51 browser(), web_resource.ReplaceComponents(make_host_a_com));
52 std::string result; 52 std::string result;
53 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 53 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
54 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 54 chrome::GetActiveWebContents(browser()),
55 "",
56 "window.domAutomationController.send(document.title)", 55 "window.domAutomationController.send(document.title)",
57 &result)); 56 &result));
58 EXPECT_EQ(result, "Loaded"); 57 EXPECT_EQ(result, "Loaded");
59 58
60 // A web host that loads a non-existent extension. 59 // A web host that loads a non-existent extension.
61 GURL non_existent_extension( 60 GURL non_existent_extension(
62 test_server()->GetURL( 61 test_server()->GetURL(
63 "files/extensions/api_test/extension_resource_request_policy/" 62 "files/extensions/api_test/extension_resource_request_policy/"
64 "non_existent_extension.html")); 63 "non_existent_extension.html"));
65 ui_test_utils::NavigateToURL(browser(), non_existent_extension); 64 ui_test_utils::NavigateToURL(browser(), non_existent_extension);
66 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 65 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
67 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 66 chrome::GetActiveWebContents(browser()),
68 "",
69 "window.domAutomationController.send(document.title)", 67 "window.domAutomationController.send(document.title)",
70 &result)); 68 &result));
71 EXPECT_EQ(result, "Image failed to load"); 69 EXPECT_EQ(result, "Image failed to load");
72 70
73 // A data URL. Data URLs should always be able to load chrome-extension:// 71 // A data URL. Data URLs should always be able to load chrome-extension://
74 // resources. 72 // resources.
75 std::string file_source; 73 std::string file_source;
76 ASSERT_TRUE(file_util::ReadFileToString( 74 ASSERT_TRUE(file_util::ReadFileToString(
77 test_data_dir_.AppendASCII("extension_resource_request_policy") 75 test_data_dir_.AppendASCII("extension_resource_request_policy")
78 .AppendASCII("index.html"), &file_source)); 76 .AppendASCII("index.html"), &file_source));
79 ui_test_utils::NavigateToURL(browser(), 77 ui_test_utils::NavigateToURL(browser(),
80 GURL(std::string("data:text/html;charset=utf-8,") + file_source)); 78 GURL(std::string("data:text/html;charset=utf-8,") + file_source));
81 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 79 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
82 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 80 chrome::GetActiveWebContents(browser()),
83 "",
84 "window.domAutomationController.send(document.title)", 81 "window.domAutomationController.send(document.title)",
85 &result)); 82 &result));
86 EXPECT_EQ(result, "Loaded"); 83 EXPECT_EQ(result, "Loaded");
87 84
88 // A different extension. Legacy (manifest_version 1) extensions should always 85 // A different extension. Legacy (manifest_version 1) extensions should always
89 // be able to load each other's resources. 86 // be able to load each other's resources.
90 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_ 87 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_
91 .AppendASCII("extension_resource_request_policy") 88 .AppendASCII("extension_resource_request_policy")
92 .AppendASCII("extension2"), 89 .AppendASCII("extension2"),
93 // Tests manifest_version 1 behavior, so warnings are expected. 90 // Tests manifest_version 1 behavior, so warnings are expected.
94 ExtensionBrowserTest::kFlagIgnoreManifestWarnings)); 91 ExtensionBrowserTest::kFlagIgnoreManifestWarnings));
95 ui_test_utils::NavigateToURL( 92 ui_test_utils::NavigateToURL(
96 browser(), 93 browser(),
97 GURL("chrome-extension://pbkkcbgdkliohhfaeefcijaghglkahja/index.html")); 94 GURL("chrome-extension://pbkkcbgdkliohhfaeefcijaghglkahja/index.html"));
98 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 95 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
99 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 96 chrome::GetActiveWebContents(browser()),
100 "",
101 "window.domAutomationController.send(document.title)", 97 "window.domAutomationController.send(document.title)",
102 &result)); 98 &result));
103 EXPECT_EQ(result, "Loaded"); 99 EXPECT_EQ(result, "Loaded");
104 } 100 }
105 101
106 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 102 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
107 ExtensionCanLoadHostedAppIcons) { 103 ExtensionCanLoadHostedAppIcons) {
108 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_ 104 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_
109 .AppendASCII("extension_resource_request_policy") 105 .AppendASCII("extension_resource_request_policy")
110 .AppendASCII("extension"), 106 .AppendASCII("extension"),
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 ASSERT_TRUE(test_server()->Start()); 149 ASSERT_TRUE(test_server()->Start());
154 ASSERT_TRUE(LoadExtension(test_data_dir_ 150 ASSERT_TRUE(LoadExtension(test_data_dir_
155 .AppendASCII("extension_resource_request_policy") 151 .AppendASCII("extension_resource_request_policy")
156 .AppendASCII("web_accessible"))); 152 .AppendASCII("web_accessible")));
157 153
158 GURL accessible_resource( 154 GURL accessible_resource(
159 test_server()->GetURL( 155 test_server()->GetURL(
160 "files/extensions/api_test/extension_resource_request_policy/" 156 "files/extensions/api_test/extension_resource_request_policy/"
161 "web_accessible/accessible_resource.html")); 157 "web_accessible/accessible_resource.html"));
162 ui_test_utils::NavigateToURL(browser(), accessible_resource); 158 ui_test_utils::NavigateToURL(browser(), accessible_resource);
163 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 159 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
164 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 160 chrome::GetActiveWebContents(browser()),
165 "",
166 "window.domAutomationController.send(document.title)", 161 "window.domAutomationController.send(document.title)",
167 &result)); 162 &result));
168 EXPECT_EQ("Loaded", result); 163 EXPECT_EQ("Loaded", result);
169 164
170 GURL xhr_accessible_resource( 165 GURL xhr_accessible_resource(
171 test_server()->GetURL( 166 test_server()->GetURL(
172 "files/extensions/api_test/extension_resource_request_policy/" 167 "files/extensions/api_test/extension_resource_request_policy/"
173 "web_accessible/xhr_accessible_resource.html")); 168 "web_accessible/xhr_accessible_resource.html"));
174 ui_test_utils::NavigateToURL( 169 ui_test_utils::NavigateToURL(
175 browser(), xhr_accessible_resource); 170 browser(), xhr_accessible_resource);
176 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 171 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
177 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 172 chrome::GetActiveWebContents(browser()),
178 "",
179 "window.domAutomationController.send(document.title)", 173 "window.domAutomationController.send(document.title)",
180 &result)); 174 &result));
181 EXPECT_EQ("XHR completed with status: 200", result); 175 EXPECT_EQ("XHR completed with status: 200", result);
182 176
183 GURL xhr_inaccessible_resource( 177 GURL xhr_inaccessible_resource(
184 test_server()->GetURL( 178 test_server()->GetURL(
185 "files/extensions/api_test/extension_resource_request_policy/" 179 "files/extensions/api_test/extension_resource_request_policy/"
186 "web_accessible/xhr_inaccessible_resource.html")); 180 "web_accessible/xhr_inaccessible_resource.html"));
187 ui_test_utils::NavigateToURL( 181 ui_test_utils::NavigateToURL(
188 browser(), xhr_inaccessible_resource); 182 browser(), xhr_inaccessible_resource);
189 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 183 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
190 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 184 chrome::GetActiveWebContents(browser()),
191 "",
192 "window.domAutomationController.send(document.title)", 185 "window.domAutomationController.send(document.title)",
193 &result)); 186 &result));
194 EXPECT_EQ("XHR failed to load resource", result); 187 EXPECT_EQ("XHR failed to load resource", result);
195 188
196 GURL nonaccessible_resource( 189 GURL nonaccessible_resource(
197 test_server()->GetURL( 190 test_server()->GetURL(
198 "files/extensions/api_test/extension_resource_request_policy/" 191 "files/extensions/api_test/extension_resource_request_policy/"
199 "web_accessible/nonaccessible_resource.html")); 192 "web_accessible/nonaccessible_resource.html"));
200 ui_test_utils::NavigateToURL(browser(), nonaccessible_resource); 193 ui_test_utils::NavigateToURL(browser(), nonaccessible_resource);
201 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 194 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
202 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 195 chrome::GetActiveWebContents(browser()),
203 "",
204 "window.domAutomationController.send(document.title)", 196 "window.domAutomationController.send(document.title)",
205 &result)); 197 &result));
206 EXPECT_EQ("Image failed to load", result); 198 EXPECT_EQ("Image failed to load", result);
207 199
208 GURL nonexistent_resource( 200 GURL nonexistent_resource(
209 test_server()->GetURL( 201 test_server()->GetURL(
210 "files/extensions/api_test/extension_resource_request_policy/" 202 "files/extensions/api_test/extension_resource_request_policy/"
211 "web_accessible/nonexistent_resource.html")); 203 "web_accessible/nonexistent_resource.html"));
212 ui_test_utils::NavigateToURL(browser(), nonexistent_resource); 204 ui_test_utils::NavigateToURL(browser(), nonexistent_resource);
213 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 205 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
214 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 206 chrome::GetActiveWebContents(browser()),
215 "",
216 "window.domAutomationController.send(document.title)", 207 "window.domAutomationController.send(document.title)",
217 &result)); 208 &result));
218 EXPECT_EQ("Image failed to load", result); 209 EXPECT_EQ("Image failed to load", result);
219 210
220 GURL nonaccessible_cer_resource( 211 GURL nonaccessible_cer_resource(
221 test_server()->GetURL( 212 test_server()->GetURL(
222 "files/extensions/api_test/extension_resource_request_policy/" 213 "files/extensions/api_test/extension_resource_request_policy/"
223 "web_accessible/nonaccessible_chrome_resource_scheme.html")); 214 "web_accessible/nonaccessible_chrome_resource_scheme.html"));
224 ui_test_utils::NavigateToURL(browser(), nonaccessible_cer_resource); 215 ui_test_utils::NavigateToURL(browser(), nonaccessible_cer_resource);
225 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 216 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
226 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 217 chrome::GetActiveWebContents(browser()),
227 "",
228 "window.domAutomationController.send(document.title)", 218 "window.domAutomationController.send(document.title)",
229 &result)); 219 &result));
230 EXPECT_EQ("Loading CER:// failed.", result); 220 EXPECT_EQ("Loading CER:// failed.", result);
231 221
232 GURL newtab_page("chrome://newtab"); 222 GURL newtab_page("chrome://newtab");
233 GURL accessible_newtab_override( 223 GURL accessible_newtab_override(
234 test_server()->GetURL( 224 test_server()->GetURL(
235 "files/extensions/api_test/extension_resource_request_policy/" 225 "files/extensions/api_test/extension_resource_request_policy/"
236 "web_accessible/accessible_history_navigation.html")); 226 "web_accessible/accessible_history_navigation.html"));
237 ui_test_utils::NavigateToURL(browser(), newtab_page); 227 ui_test_utils::NavigateToURL(browser(), newtab_page);
238 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( 228 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(
239 browser(), accessible_newtab_override, 2); 229 browser(), accessible_newtab_override, 2);
240 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 230 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
241 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 231 chrome::GetActiveWebContents(browser()),
242 "",
243 "window.domAutomationController.send(document.title)", 232 "window.domAutomationController.send(document.title)",
244 &result)); 233 &result));
245 EXPECT_EQ("New Tab Page Loaded Successfully", result); 234 EXPECT_EQ("New Tab Page Loaded Successfully", result);
246 } 235 }
247 236
248 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 237 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
249 WebAccessibleResourcesWithCSP) { 238 WebAccessibleResourcesWithCSP) {
250 std::string result; 239 std::string result;
251 ASSERT_TRUE(test_server()->Start()); 240 ASSERT_TRUE(test_server()->Start());
252 ASSERT_TRUE(LoadExtension(test_data_dir_ 241 ASSERT_TRUE(LoadExtension(test_data_dir_
253 .AppendASCII("extension_resource_request_policy") 242 .AppendASCII("extension_resource_request_policy")
254 .AppendASCII("web_accessible"))); 243 .AppendASCII("web_accessible")));
255 244
256 GURL accessible_resource_with_csp( 245 GURL accessible_resource_with_csp(
257 test_server()->GetURL( 246 test_server()->GetURL(
258 "files/extensions/api_test/extension_resource_request_policy/" 247 "files/extensions/api_test/extension_resource_request_policy/"
259 "web_accessible/accessible_resource_with_csp.html")); 248 "web_accessible/accessible_resource_with_csp.html"));
260 ui_test_utils::NavigateToURL(browser(), accessible_resource_with_csp); 249 ui_test_utils::NavigateToURL(browser(), accessible_resource_with_csp);
261 ASSERT_TRUE(content::ExecuteJavaScriptAndExtractString( 250 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
262 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), 251 chrome::GetActiveWebContents(browser()),
263 "",
264 "window.domAutomationController.send(document.title)", 252 "window.domAutomationController.send(document.title)",
265 &result)); 253 &result));
266 EXPECT_EQ("Loaded", result); 254 EXPECT_EQ("Loaded", result);
267 } 255 }
268 256
269 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) { 257 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) {
270 // Load another extension, which the test one shouldn't be able to get 258 // Load another extension, which the test one shouldn't be able to get
271 // resources from. 259 // resources from.
272 ASSERT_TRUE(LoadExtension(test_data_dir_ 260 ASSERT_TRUE(LoadExtension(test_data_dir_
273 .AppendASCII("extension_resource_request_policy") 261 .AppendASCII("extension_resource_request_policy")
274 .AppendASCII("inaccessible"))); 262 .AppendASCII("inaccessible")));
275 EXPECT_TRUE(RunExtensionSubtest( 263 EXPECT_TRUE(RunExtensionSubtest(
276 "extension_resource_request_policy/web_accessible", 264 "extension_resource_request_policy/web_accessible",
277 "iframe.html")) << message_; 265 "iframe.html")) << message_;
278 } 266 }
279 267
280 #if defined(OS_MACOSX) 268 #if defined(OS_MACOSX)
281 #define MAYBE_ExtensionAccessibleResources DISABLED_ExtensionAccessibleResources 269 #define MAYBE_ExtensionAccessibleResources DISABLED_ExtensionAccessibleResources
282 #else 270 #else
283 #define MAYBE_ExtensionAccessibleResources ExtensionAccessibleResources 271 #define MAYBE_ExtensionAccessibleResources ExtensionAccessibleResources
284 #endif 272 #endif
285 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 273 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
286 MAYBE_ExtensionAccessibleResources) { 274 MAYBE_ExtensionAccessibleResources) {
287 ASSERT_TRUE(RunExtensionSubtest("accessible_cer", "main.html")) << message_; 275 ASSERT_TRUE(RunExtensionSubtest("accessible_cer", "main.html")) << message_;
288 } 276 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_nacl_browsertest.cc ('k') | chrome/browser/extensions/extension_startup_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698