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

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

Issue 2221193002: Add testing configs for ParseHTMLOnMainThread experiment (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Devlin review Created 4 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 unified diff | Download patch
« no previous file with comments | « no previous file | testing/variations/fieldtrial_testing_config_android.json » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/command_line.h" 5 #include "base/command_line.h"
6 #include "base/logging.h" 6 #include "base/logging.h"
7 #include "build/build_config.h" 7 #include "build/build_config.h"
8 #include "chrome/browser/extensions/extension_apitest.h" 8 #include "chrome/browser/extensions/extension_apitest.h"
9 #include "chrome/browser/ui/browser.h" 9 #include "chrome/browser/ui/browser.h"
10 #include "chrome/browser/ui/tabs/tab_strip_model.h" 10 #include "chrome/browser/ui/tabs/tab_strip_model.h"
11 #include "chrome/common/chrome_switches.h" 11 #include "chrome/common/chrome_switches.h"
12 #include "chrome/test/base/test_switches.h" 12 #include "chrome/test/base/test_switches.h"
13 #include "chrome/test/base/ui_test_utils.h" 13 #include "chrome/test/base/ui_test_utils.h"
14 #include "content/public/browser/navigation_handle.h" 14 #include "content/public/browser/navigation_handle.h"
15 #include "content/public/browser/notification_service.h"
15 #include "content/public/browser/web_contents.h" 16 #include "content/public/browser/web_contents.h"
16 #include "content/public/browser/web_contents_observer.h" 17 #include "content/public/browser/web_contents_observer.h"
17 #include "content/public/test/browser_test_utils.h" 18 #include "content/public/test/browser_test_utils.h"
18 #include "extensions/common/switches.h" 19 #include "extensions/common/switches.h"
19 #include "net/dns/mock_host_resolver.h" 20 #include "net/dns/mock_host_resolver.h"
20 #include "net/test/embedded_test_server/embedded_test_server.h" 21 #include "net/test/embedded_test_server/embedded_test_server.h"
21 #include "url/gurl.h" 22 #include "url/gurl.h"
22 23
23 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest { 24 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest {
24 protected: 25 protected:
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 browser()->tab_strip_model()->GetActiveWebContents(), 229 browser()->tab_strip_model()->GetActiveWebContents(),
229 "window.domAutomationController.send(document.title)", 230 "window.domAutomationController.send(document.title)",
230 &result)); 231 &result));
231 EXPECT_EQ("New Tab Page Loaded Successfully", result); 232 EXPECT_EQ("New Tab Page Loaded Successfully", result);
232 } 233 }
233 234
234 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 235 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
235 LinkToWebAccessibleResources) { 236 LinkToWebAccessibleResources) {
236 std::string result; 237 std::string result;
237 ASSERT_TRUE(embedded_test_server()->Start()); 238 ASSERT_TRUE(embedded_test_server()->Start());
238 ASSERT_TRUE(LoadExtension(test_data_dir_ 239 const extensions::Extension* extension = LoadExtension(
239 .AppendASCII("extension_resource_request_policy") 240 test_data_dir_.AppendASCII("extension_resource_request_policy")
240 .AppendASCII("web_accessible"))); 241 .AppendASCII("web_accessible"));
Devlin 2016/08/10 20:42:35 nitty nit: leave in an ASSERT_TRUE(extension) so t
Charlie Harrison 2016/08/10 20:45:35 Done. Sorry about that.
241 242
242 GURL accessible_linked_resource(embedded_test_server()->GetURL( 243 GURL accessible_linked_resource(embedded_test_server()->GetURL(
243 "/extensions/api_test/extension_resource_request_policy/" 244 "/extensions/api_test/extension_resource_request_policy/"
244 "web_accessible/accessible_link_resource.html")); 245 "web_accessible/accessible_link_resource.html"));
245 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( 246 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(
246 browser(), accessible_linked_resource, 1); 247 browser(), accessible_linked_resource, 1);
247 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 248 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
248 browser()->tab_strip_model()->GetActiveWebContents(), 249 browser()->tab_strip_model()->GetActiveWebContents(),
249 "window.domAutomationController.send(document.URL)", 250 "window.domAutomationController.send(document.URL)",
250 &result)); 251 &result));
251 EXPECT_NE("about:blank", result); 252 EXPECT_NE("about:blank", result);
252 253
253 GURL nonaccessible_linked_resource(embedded_test_server()->GetURL( 254 GURL nonaccessible_linked_resource(embedded_test_server()->GetURL(
254 "/extensions/api_test/extension_resource_request_policy/" 255 "/extensions/api_test/extension_resource_request_policy/"
255 "web_accessible/nonaccessible_link_resource.html")); 256 "web_accessible/nonaccessible_link_resource.html"));
256 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), 257 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(),
257 nonaccessible_linked_resource, 2); 258 nonaccessible_linked_resource, 2);
258 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 259 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
259 browser()->tab_strip_model()->GetActiveWebContents(), 260 browser()->tab_strip_model()->GetActiveWebContents(),
260 "window.domAutomationController.send(document.URL)", 261 "window.domAutomationController.send(document.URL)",
261 &result)); 262 &result));
262 EXPECT_EQ("about:blank", result); 263 EXPECT_EQ("about:blank", result);
263 264
265
266 // Redirects can sometimes occur before the load event, so use a
267 // UrlLoadObserver instead of blocking waiting for two load events.
268 GURL accessible_url = extension->GetResourceURL("/test.png");
269 ui_test_utils::UrlLoadObserver accessible_observer(
270 accessible_url, content::NotificationService::AllSources());
264 GURL accessible_client_redirect_resource(embedded_test_server()->GetURL( 271 GURL accessible_client_redirect_resource(embedded_test_server()->GetURL(
265 "/extensions/api_test/extension_resource_request_policy/" 272 "/extensions/api_test/extension_resource_request_policy/"
266 "web_accessible/accessible_redirect_resource.html")); 273 "web_accessible/accessible_redirect_resource.html"));
267 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), 274 ui_test_utils::NavigateToURL(browser(), accessible_client_redirect_resource);
268 accessible_client_redirect_resource, 2); 275 accessible_observer.Wait();
269 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 276 EXPECT_EQ(browser()
Devlin 2016/08/10 20:42:35 nitty nit: expected, actual so EXPECT_EQ(accessibl
Charlie Harrison 2016/08/10 20:45:35 Done.
270 browser()->tab_strip_model()->GetActiveWebContents(), 277 ->tab_strip_model()
271 "window.domAutomationController.send(document.URL)", 278 ->GetActiveWebContents()
272 &result)); 279 ->GetLastCommittedURL(),
273 EXPECT_NE("about:blank", result); 280 accessible_url);
274 281
282 ui_test_utils::UrlLoadObserver nonaccessible_observer(
283 GURL("about:blank"), content::NotificationService::AllSources());
275 GURL nonaccessible_client_redirect_resource(embedded_test_server()->GetURL( 284 GURL nonaccessible_client_redirect_resource(embedded_test_server()->GetURL(
276 "/extensions/api_test/extension_resource_request_policy/" 285 "/extensions/api_test/extension_resource_request_policy/"
277 "web_accessible/nonaccessible_redirect_resource.html")); 286 "web_accessible/nonaccessible_redirect_resource.html"));
278 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), 287 ui_test_utils::NavigateToURL(browser(),
279 nonaccessible_client_redirect_resource, 2); 288 nonaccessible_client_redirect_resource);
280 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 289 nonaccessible_observer.Wait();
281 browser()->tab_strip_model()->GetActiveWebContents(), 290 EXPECT_EQ(browser()
282 "window.domAutomationController.send(document.URL)", 291 ->tab_strip_model()
283 &result)); 292 ->GetActiveWebContents()
284 EXPECT_EQ("about:blank", result); 293 ->GetLastCommittedURL(),
294 GURL("about:blank"));
285 } 295 }
286 296
287 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 297 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
288 WebAccessibleResourcesWithCSP) { 298 WebAccessibleResourcesWithCSP) {
289 std::string result; 299 std::string result;
290 ASSERT_TRUE(embedded_test_server()->Start()); 300 ASSERT_TRUE(embedded_test_server()->Start());
291 ASSERT_TRUE(LoadExtension(test_data_dir_ 301 ASSERT_TRUE(LoadExtension(test_data_dir_
292 .AppendASCII("extension_resource_request_policy") 302 .AppendASCII("extension_resource_request_policy")
293 .AppendASCII("web_accessible"))); 303 .AppendASCII("web_accessible")));
294 304
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
372 382
373 content::WebContents* web_contents = 383 content::WebContents* web_contents =
374 browser()->tab_strip_model()->GetActiveWebContents(); 384 browser()->tab_strip_model()->GetActiveWebContents();
375 385
376 GURL private_page( 386 GURL private_page(
377 "chrome-extension://kegmjfcnjamahdnldjmlpachmpielcdk/private.html"); 387 "chrome-extension://kegmjfcnjamahdnldjmlpachmpielcdk/private.html");
378 NavigationErrorObserver observer(web_contents, private_page); 388 NavigationErrorObserver observer(web_contents, private_page);
379 ASSERT_TRUE(content::ExecuteScript(web_contents, "navigateFrameNow()")); 389 ASSERT_TRUE(content::ExecuteScript(web_contents, "navigateFrameNow()"));
380 observer.Wait(); 390 observer.Wait();
381 } 391 }
OLDNEW
« no previous file with comments | « no previous file | testing/variations/fieldtrial_testing_config_android.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698