| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <stddef.h> | 5 #include <stddef.h> |
| 6 #include <stdint.h> | 6 #include <stdint.h> |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 1390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1401 content_browser_client.set_data_saver_enabled(true); | 1401 content_browser_client.set_data_saver_enabled(true); |
| 1402 ContentBrowserClient* old_client = | 1402 ContentBrowserClient* old_client = |
| 1403 SetBrowserClientForTesting(&content_browser_client); | 1403 SetBrowserClientForTesting(&content_browser_client); |
| 1404 shell()->web_contents()->GetRenderViewHost()->OnWebkitPreferencesChanged(); | 1404 shell()->web_contents()->GetRenderViewHost()->OnWebkitPreferencesChanged(); |
| 1405 scoped_refptr<WorkerActivatedObserver> observer = | 1405 scoped_refptr<WorkerActivatedObserver> observer = |
| 1406 new WorkerActivatedObserver(wrapper()); | 1406 new WorkerActivatedObserver(wrapper()); |
| 1407 observer->Init(); | 1407 observer->Init(); |
| 1408 public_context()->RegisterServiceWorker( | 1408 public_context()->RegisterServiceWorker( |
| 1409 embedded_test_server()->GetURL(kPageUrl), | 1409 embedded_test_server()->GetURL(kPageUrl), |
| 1410 embedded_test_server()->GetURL(kWorkerUrl), | 1410 embedded_test_server()->GetURL(kWorkerUrl), |
| 1411 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 1411 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 1412 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 1412 observer->Wait(); | 1413 observer->Wait(); |
| 1413 | 1414 |
| 1414 const base::string16 title1 = base::ASCIIToUTF16("save-data=on"); | 1415 const base::string16 title1 = base::ASCIIToUTF16("save-data=on"); |
| 1415 TitleWatcher title_watcher1(shell()->web_contents(), title1); | 1416 TitleWatcher title_watcher1(shell()->web_contents(), title1); |
| 1416 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); | 1417 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); |
| 1417 EXPECT_EQ(title1, title_watcher1.WaitAndGetTitle()); | 1418 EXPECT_EQ(title1, title_watcher1.WaitAndGetTitle()); |
| 1418 | 1419 |
| 1419 SetBrowserClientForTesting(old_client); | 1420 SetBrowserClientForTesting(old_client); |
| 1420 shell()->Close(); | 1421 shell()->Close(); |
| (...skipping 22 matching lines...) Expand all Loading... |
| 1443 content_browser_client.set_data_saver_enabled(true); | 1444 content_browser_client.set_data_saver_enabled(true); |
| 1444 ContentBrowserClient* old_client = | 1445 ContentBrowserClient* old_client = |
| 1445 SetBrowserClientForTesting(&content_browser_client); | 1446 SetBrowserClientForTesting(&content_browser_client); |
| 1446 shell()->web_contents()->GetRenderViewHost()->OnWebkitPreferencesChanged(); | 1447 shell()->web_contents()->GetRenderViewHost()->OnWebkitPreferencesChanged(); |
| 1447 scoped_refptr<WorkerActivatedObserver> observer = | 1448 scoped_refptr<WorkerActivatedObserver> observer = |
| 1448 new WorkerActivatedObserver(wrapper()); | 1449 new WorkerActivatedObserver(wrapper()); |
| 1449 observer->Init(); | 1450 observer->Init(); |
| 1450 public_context()->RegisterServiceWorker( | 1451 public_context()->RegisterServiceWorker( |
| 1451 embedded_test_server()->GetURL(kPageUrl), | 1452 embedded_test_server()->GetURL(kPageUrl), |
| 1452 embedded_test_server()->GetURL(kWorkerUrl), | 1453 embedded_test_server()->GetURL(kWorkerUrl), |
| 1454 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 1453 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 1455 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 1454 observer->Wait(); | 1456 observer->Wait(); |
| 1455 | 1457 |
| 1456 const base::string16 title = base::ASCIIToUTF16("PASS"); | 1458 const base::string16 title = base::ASCIIToUTF16("PASS"); |
| 1457 TitleWatcher title_watcher(shell()->web_contents(), title); | 1459 TitleWatcher title_watcher(shell()->web_contents(), title); |
| 1458 NavigateToURL(shell(), | 1460 NavigateToURL(shell(), |
| 1459 embedded_test_server()->GetURL(base::StringPrintf( | 1461 embedded_test_server()->GetURL(base::StringPrintf( |
| 1460 "%s?%s", kPageUrl, | 1462 "%s?%s", kPageUrl, |
| 1461 cross_origin_server.GetURL("/cross_origin_request.html") | 1463 cross_origin_server.GetURL("/cross_origin_request.html") |
| 1462 .spec() | 1464 .spec() |
| (...skipping 23 matching lines...) Expand all Loading... |
| 1486 new WorkerActivatedObserver(wrapper()); | 1488 new WorkerActivatedObserver(wrapper()); |
| 1487 observer->Init(); | 1489 observer->Init(); |
| 1488 | 1490 |
| 1489 embedded_test_server()->RegisterRequestHandler( | 1491 embedded_test_server()->RegisterRequestHandler( |
| 1490 base::Bind(&VerifySaveDataHeaderInRequest)); | 1492 base::Bind(&VerifySaveDataHeaderInRequest)); |
| 1491 StartServerAndNavigateToSetup(); | 1493 StartServerAndNavigateToSetup(); |
| 1492 | 1494 |
| 1493 public_context()->RegisterServiceWorker( | 1495 public_context()->RegisterServiceWorker( |
| 1494 embedded_test_server()->GetURL(kPageUrl), | 1496 embedded_test_server()->GetURL(kPageUrl), |
| 1495 embedded_test_server()->GetURL(kWorkerUrl), | 1497 embedded_test_server()->GetURL(kWorkerUrl), |
| 1498 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 1496 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 1499 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 1497 observer->Wait(); | 1500 observer->Wait(); |
| 1498 | 1501 |
| 1499 NavigateToURLBlockUntilNavigationsComplete( | 1502 NavigateToURLBlockUntilNavigationsComplete( |
| 1500 shell(), embedded_test_server()->GetURL(kPageUrl), 1); | 1503 shell(), embedded_test_server()->GetURL(kPageUrl), 1); |
| 1501 | 1504 |
| 1502 SetBrowserClientForTesting(old_client); | 1505 SetBrowserClientForTesting(old_client); |
| 1503 shell()->Close(); | 1506 shell()->Close(); |
| 1504 | 1507 |
| 1505 base::RunLoop run_loop; | 1508 base::RunLoop run_loop; |
| 1506 public_context()->UnregisterServiceWorker( | 1509 public_context()->UnregisterServiceWorker( |
| 1507 embedded_test_server()->GetURL(kPageUrl), | 1510 embedded_test_server()->GetURL(kPageUrl), |
| 1508 base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure())); | 1511 base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure())); |
| 1509 run_loop.Run(); | 1512 run_loop.Run(); |
| 1510 } | 1513 } |
| 1511 | 1514 |
| 1512 IN_PROC_BROWSER_TEST_F(ServiceWorkerBrowserTest, Reload) { | 1515 IN_PROC_BROWSER_TEST_F(ServiceWorkerBrowserTest, Reload) { |
| 1513 StartServerAndNavigateToSetup(); | 1516 StartServerAndNavigateToSetup(); |
| 1514 const char kPageUrl[] = "/service_worker/reload.html"; | 1517 const char kPageUrl[] = "/service_worker/reload.html"; |
| 1515 const char kWorkerUrl[] = "/service_worker/fetch_event_reload.js"; | 1518 const char kWorkerUrl[] = "/service_worker/fetch_event_reload.js"; |
| 1516 scoped_refptr<WorkerActivatedObserver> observer = | 1519 scoped_refptr<WorkerActivatedObserver> observer = |
| 1517 new WorkerActivatedObserver(wrapper()); | 1520 new WorkerActivatedObserver(wrapper()); |
| 1518 observer->Init(); | 1521 observer->Init(); |
| 1519 public_context()->RegisterServiceWorker( | 1522 public_context()->RegisterServiceWorker( |
| 1520 embedded_test_server()->GetURL(kPageUrl), | 1523 embedded_test_server()->GetURL(kPageUrl), |
| 1521 embedded_test_server()->GetURL(kWorkerUrl), | 1524 embedded_test_server()->GetURL(kWorkerUrl), |
| 1525 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 1522 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 1526 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 1523 observer->Wait(); | 1527 observer->Wait(); |
| 1524 | 1528 |
| 1525 const base::string16 title1 = base::ASCIIToUTF16("reload=false"); | 1529 const base::string16 title1 = base::ASCIIToUTF16("reload=false"); |
| 1526 TitleWatcher title_watcher1(shell()->web_contents(), title1); | 1530 TitleWatcher title_watcher1(shell()->web_contents(), title1); |
| 1527 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); | 1531 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); |
| 1528 EXPECT_EQ(title1, title_watcher1.WaitAndGetTitle()); | 1532 EXPECT_EQ(title1, title_watcher1.WaitAndGetTitle()); |
| 1529 | 1533 |
| 1530 const base::string16 title2 = base::ASCIIToUTF16("reload=true"); | 1534 const base::string16 title2 = base::ASCIIToUTF16("reload=true"); |
| 1531 TitleWatcher title_watcher2(shell()->web_contents(), title2); | 1535 TitleWatcher title_watcher2(shell()->web_contents(), title2); |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1585 callback.Run(HeaderInterceptorResult::KILL); | 1589 callback.Run(HeaderInterceptorResult::KILL); |
| 1586 } | 1590 } |
| 1587 | 1591 |
| 1588 void SetupForNavigationPreloadTest(const GURL& scope, | 1592 void SetupForNavigationPreloadTest(const GURL& scope, |
| 1589 const GURL& worker_url) { | 1593 const GURL& worker_url) { |
| 1590 scoped_refptr<WorkerActivatedObserver> observer = | 1594 scoped_refptr<WorkerActivatedObserver> observer = |
| 1591 new WorkerActivatedObserver(wrapper()); | 1595 new WorkerActivatedObserver(wrapper()); |
| 1592 observer->Init(); | 1596 observer->Init(); |
| 1593 | 1597 |
| 1594 public_context()->RegisterServiceWorker( | 1598 public_context()->RegisterServiceWorker( |
| 1595 scope, worker_url, | 1599 scope, worker_url, blink::WebServiceWorkerUpdateViaCache::kImports, |
| 1596 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 1600 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 1597 observer->Wait(); | 1601 observer->Wait(); |
| 1598 } | 1602 } |
| 1599 | 1603 |
| 1600 std::string LoadNavigationPreloadTestPage(const GURL& page_url, | 1604 std::string LoadNavigationPreloadTestPage(const GURL& page_url, |
| 1601 const GURL& worker_url, | 1605 const GURL& worker_url, |
| 1602 const char* expected_result) { | 1606 const char* expected_result) { |
| 1603 RegisterMonitorRequestHandler(); | 1607 RegisterMonitorRequestHandler(); |
| 1604 StartServerAndNavigateToSetup(); | 1608 StartServerAndNavigateToSetup(); |
| 1605 SetupForNavigationPreloadTest(page_url, worker_url); | 1609 SetupForNavigationPreloadTest(page_url, worker_url); |
| (...skipping 684 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2290 const char kPageUrl[] = "/service_worker/fetch_event_blob.html"; | 2294 const char kPageUrl[] = "/service_worker/fetch_event_blob.html"; |
| 2291 const char kWorkerUrl[] = "/service_worker/fetch_event_blob.js"; | 2295 const char kWorkerUrl[] = "/service_worker/fetch_event_blob.js"; |
| 2292 net::EmbeddedTestServer https_server(net::EmbeddedTestServer::TYPE_HTTPS); | 2296 net::EmbeddedTestServer https_server(net::EmbeddedTestServer::TYPE_HTTPS); |
| 2293 https_server.ServeFilesFromSourceDirectory("content/test/data"); | 2297 https_server.ServeFilesFromSourceDirectory("content/test/data"); |
| 2294 ASSERT_TRUE(https_server.Start()); | 2298 ASSERT_TRUE(https_server.Start()); |
| 2295 | 2299 |
| 2296 scoped_refptr<WorkerActivatedObserver> observer = | 2300 scoped_refptr<WorkerActivatedObserver> observer = |
| 2297 new WorkerActivatedObserver(wrapper()); | 2301 new WorkerActivatedObserver(wrapper()); |
| 2298 observer->Init(); | 2302 observer->Init(); |
| 2299 public_context()->RegisterServiceWorker( | 2303 public_context()->RegisterServiceWorker( |
| 2300 https_server.GetURL(kPageUrl), | 2304 https_server.GetURL(kPageUrl), https_server.GetURL(kWorkerUrl), |
| 2301 https_server.GetURL(kWorkerUrl), | 2305 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2302 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 2306 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 2303 observer->Wait(); | 2307 observer->Wait(); |
| 2304 | 2308 |
| 2305 const base::string16 title = base::ASCIIToUTF16("Title"); | 2309 const base::string16 title = base::ASCIIToUTF16("Title"); |
| 2306 TitleWatcher title_watcher(shell()->web_contents(), title); | 2310 TitleWatcher title_watcher(shell()->web_contents(), title); |
| 2307 NavigateToURL(shell(), https_server.GetURL(kPageUrl)); | 2311 NavigateToURL(shell(), https_server.GetURL(kPageUrl)); |
| 2308 EXPECT_EQ(title, title_watcher.WaitAndGetTitle()); | 2312 EXPECT_EQ(title, title_watcher.WaitAndGetTitle()); |
| 2309 NavigationEntry* entry = | 2313 NavigationEntry* entry = |
| 2310 shell()->web_contents()->GetController().GetVisibleEntry(); | 2314 shell()->web_contents()->GetController().GetVisibleEntry(); |
| 2311 EXPECT_TRUE(entry->GetSSL().initialized); | 2315 EXPECT_TRUE(entry->GetSSL().initialized); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 2328 ResponseFromHTTPServiceWorkerIsNotMarkedAsSecure) { | 2332 ResponseFromHTTPServiceWorkerIsNotMarkedAsSecure) { |
| 2329 StartServerAndNavigateToSetup(); | 2333 StartServerAndNavigateToSetup(); |
| 2330 const char kPageUrl[] = "/service_worker/fetch_event_blob.html"; | 2334 const char kPageUrl[] = "/service_worker/fetch_event_blob.html"; |
| 2331 const char kWorkerUrl[] = "/service_worker/fetch_event_blob.js"; | 2335 const char kWorkerUrl[] = "/service_worker/fetch_event_blob.js"; |
| 2332 scoped_refptr<WorkerActivatedObserver> observer = | 2336 scoped_refptr<WorkerActivatedObserver> observer = |
| 2333 new WorkerActivatedObserver(wrapper()); | 2337 new WorkerActivatedObserver(wrapper()); |
| 2334 observer->Init(); | 2338 observer->Init(); |
| 2335 public_context()->RegisterServiceWorker( | 2339 public_context()->RegisterServiceWorker( |
| 2336 embedded_test_server()->GetURL(kPageUrl), | 2340 embedded_test_server()->GetURL(kPageUrl), |
| 2337 embedded_test_server()->GetURL(kWorkerUrl), | 2341 embedded_test_server()->GetURL(kWorkerUrl), |
| 2342 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2338 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 2343 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 2339 observer->Wait(); | 2344 observer->Wait(); |
| 2340 | 2345 |
| 2341 const base::string16 title = base::ASCIIToUTF16("Title"); | 2346 const base::string16 title = base::ASCIIToUTF16("Title"); |
| 2342 TitleWatcher title_watcher(shell()->web_contents(), title); | 2347 TitleWatcher title_watcher(shell()->web_contents(), title); |
| 2343 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); | 2348 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); |
| 2344 EXPECT_EQ(title, title_watcher.WaitAndGetTitle()); | 2349 EXPECT_EQ(title, title_watcher.WaitAndGetTitle()); |
| 2345 NavigationEntry* entry = | 2350 NavigationEntry* entry = |
| 2346 shell()->web_contents()->GetController().GetVisibleEntry(); | 2351 shell()->web_contents()->GetController().GetVisibleEntry(); |
| 2347 EXPECT_TRUE(entry->GetSSL().initialized); | 2352 EXPECT_TRUE(entry->GetSSL().initialized); |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2441 base::Bind(&ExpectResultAndRun, false, run_loop.QuitClosure())); | 2446 base::Bind(&ExpectResultAndRun, false, run_loop.QuitClosure())); |
| 2442 run_loop.Run(); | 2447 run_loop.Run(); |
| 2443 } | 2448 } |
| 2444 | 2449 |
| 2445 // If we use a worker URL that doesn't exist, registration fails. | 2450 // If we use a worker URL that doesn't exist, registration fails. |
| 2446 { | 2451 { |
| 2447 base::RunLoop run_loop; | 2452 base::RunLoop run_loop; |
| 2448 public_context()->RegisterServiceWorker( | 2453 public_context()->RegisterServiceWorker( |
| 2449 embedded_test_server()->GetURL(kScope), | 2454 embedded_test_server()->GetURL(kScope), |
| 2450 embedded_test_server()->GetURL("/does/not/exist"), | 2455 embedded_test_server()->GetURL("/does/not/exist"), |
| 2456 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2451 base::Bind(&ExpectResultAndRun, false, run_loop.QuitClosure())); | 2457 base::Bind(&ExpectResultAndRun, false, run_loop.QuitClosure())); |
| 2452 run_loop.Run(); | 2458 run_loop.Run(); |
| 2453 } | 2459 } |
| 2454 EXPECT_EQ(0, CountRenderProcessHosts()); | 2460 EXPECT_EQ(0, CountRenderProcessHosts()); |
| 2455 | 2461 |
| 2456 // Register returns when the promise would be resolved. | 2462 // Register returns when the promise would be resolved. |
| 2457 { | 2463 { |
| 2458 base::RunLoop run_loop; | 2464 base::RunLoop run_loop; |
| 2459 public_context()->RegisterServiceWorker( | 2465 public_context()->RegisterServiceWorker( |
| 2460 embedded_test_server()->GetURL(kScope), | 2466 embedded_test_server()->GetURL(kScope), |
| 2461 embedded_test_server()->GetURL(kWorkerUrl), | 2467 embedded_test_server()->GetURL(kWorkerUrl), |
| 2468 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2462 base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure())); | 2469 base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure())); |
| 2463 run_loop.Run(); | 2470 run_loop.Run(); |
| 2464 } | 2471 } |
| 2465 EXPECT_EQ(1, CountRenderProcessHosts()); | 2472 EXPECT_EQ(1, CountRenderProcessHosts()); |
| 2466 | 2473 |
| 2467 // Registering again should succeed, although the algo still | 2474 // Registering again should succeed, although the algo still |
| 2468 // might not be complete. | 2475 // might not be complete. |
| 2469 { | 2476 { |
| 2470 base::RunLoop run_loop; | 2477 base::RunLoop run_loop; |
| 2471 public_context()->RegisterServiceWorker( | 2478 public_context()->RegisterServiceWorker( |
| 2472 embedded_test_server()->GetURL(kScope), | 2479 embedded_test_server()->GetURL(kScope), |
| 2473 embedded_test_server()->GetURL(kWorkerUrl), | 2480 embedded_test_server()->GetURL(kWorkerUrl), |
| 2481 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2474 base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure())); | 2482 base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure())); |
| 2475 run_loop.Run(); | 2483 run_loop.Run(); |
| 2476 } | 2484 } |
| 2477 | 2485 |
| 2478 // The registration algo might not be far enough along to have | 2486 // The registration algo might not be far enough along to have |
| 2479 // stored the registration data, so it may not be findable | 2487 // stored the registration data, so it may not be findable |
| 2480 // at this point. | 2488 // at this point. |
| 2481 | 2489 |
| 2482 // Unregistering something should return true. | 2490 // Unregistering something should return true. |
| 2483 { | 2491 { |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2771 static const std::string kScriptUrl; | 2779 static const std::string kScriptUrl; |
| 2772 static const int kV8CacheTimeStampDataSize; | 2780 static const int kV8CacheTimeStampDataSize; |
| 2773 | 2781 |
| 2774 void RegisterAndActivateServiceWorker() { | 2782 void RegisterAndActivateServiceWorker() { |
| 2775 scoped_refptr<WorkerActivatedObserver> observer = | 2783 scoped_refptr<WorkerActivatedObserver> observer = |
| 2776 new WorkerActivatedObserver(wrapper()); | 2784 new WorkerActivatedObserver(wrapper()); |
| 2777 observer->Init(); | 2785 observer->Init(); |
| 2778 public_context()->RegisterServiceWorker( | 2786 public_context()->RegisterServiceWorker( |
| 2779 embedded_test_server()->GetURL(kPageUrl), | 2787 embedded_test_server()->GetURL(kPageUrl), |
| 2780 embedded_test_server()->GetURL(kWorkerUrl), | 2788 embedded_test_server()->GetURL(kWorkerUrl), |
| 2789 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2781 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 2790 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 2782 observer->Wait(); | 2791 observer->Wait(); |
| 2783 } | 2792 } |
| 2784 | 2793 |
| 2785 void NavigateToTestPage() { | 2794 void NavigateToTestPage() { |
| 2786 const base::string16 title = | 2795 const base::string16 title = |
| 2787 base::ASCIIToUTF16("Title was changed by the script."); | 2796 base::ASCIIToUTF16("Title was changed by the script."); |
| 2788 TitleWatcher title_watcher(shell()->web_contents(), title); | 2797 TitleWatcher title_watcher(shell()->web_contents(), title); |
| 2789 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); | 2798 NavigateToURL(shell(), embedded_test_server()->GetURL(kPageUrl)); |
| 2790 EXPECT_EQ(title, title_watcher.WaitAndGetTitle()); | 2799 EXPECT_EQ(title, title_watcher.WaitAndGetTitle()); |
| (...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2909 ServiceWorkerBrowserTest::SetUpOnMainThread(); | 2918 ServiceWorkerBrowserTest::SetUpOnMainThread(); |
| 2910 } | 2919 } |
| 2911 | 2920 |
| 2912 void RegisterServiceWorkerOnCrossOriginServer(const std::string& scope, | 2921 void RegisterServiceWorkerOnCrossOriginServer(const std::string& scope, |
| 2913 const std::string& script) { | 2922 const std::string& script) { |
| 2914 scoped_refptr<WorkerActivatedObserver> observer = | 2923 scoped_refptr<WorkerActivatedObserver> observer = |
| 2915 new WorkerActivatedObserver(wrapper()); | 2924 new WorkerActivatedObserver(wrapper()); |
| 2916 observer->Init(); | 2925 observer->Init(); |
| 2917 public_context()->RegisterServiceWorker( | 2926 public_context()->RegisterServiceWorker( |
| 2918 cross_origin_server_.GetURL(scope), cross_origin_server_.GetURL(script), | 2927 cross_origin_server_.GetURL(scope), cross_origin_server_.GetURL(script), |
| 2928 blink::WebServiceWorkerUpdateViaCache::kImports, |
| 2919 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); | 2929 base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing))); |
| 2920 observer->Wait(); | 2930 observer->Wait(); |
| 2921 } | 2931 } |
| 2922 | 2932 |
| 2923 void RunTestWithCrossOriginURL(const std::string& test_page, | 2933 void RunTestWithCrossOriginURL(const std::string& test_page, |
| 2924 const std::string& cross_origin_url) { | 2934 const std::string& cross_origin_url) { |
| 2925 const base::string16 title = base::ASCIIToUTF16("PASS"); | 2935 const base::string16 title = base::ASCIIToUTF16("PASS"); |
| 2926 TitleWatcher title_watcher(shell()->web_contents(), title); | 2936 TitleWatcher title_watcher(shell()->web_contents(), title); |
| 2927 NavigateToURL(shell(), | 2937 NavigateToURL(shell(), |
| 2928 embedded_test_server()->GetURL( | 2938 embedded_test_server()->GetURL( |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2965 IN_PROC_BROWSER_TEST_F(ServiceWorkerDisableWebSecurityTest, UpdateNoCrash) { | 2975 IN_PROC_BROWSER_TEST_F(ServiceWorkerDisableWebSecurityTest, UpdateNoCrash) { |
| 2966 StartServerAndNavigateToSetup(); | 2976 StartServerAndNavigateToSetup(); |
| 2967 const char kPageUrl[] = "/service_worker/disable_web_security_update.html"; | 2977 const char kPageUrl[] = "/service_worker/disable_web_security_update.html"; |
| 2968 const char kScopeUrl[] = "/service_worker/scope/"; | 2978 const char kScopeUrl[] = "/service_worker/scope/"; |
| 2969 const char kWorkerUrl[] = "/service_worker/fetch_event_blob.js"; | 2979 const char kWorkerUrl[] = "/service_worker/fetch_event_blob.js"; |
| 2970 RegisterServiceWorkerOnCrossOriginServer(kScopeUrl, kWorkerUrl); | 2980 RegisterServiceWorkerOnCrossOriginServer(kScopeUrl, kWorkerUrl); |
| 2971 RunTestWithCrossOriginURL(kPageUrl, kScopeUrl); | 2981 RunTestWithCrossOriginURL(kPageUrl, kScopeUrl); |
| 2972 } | 2982 } |
| 2973 | 2983 |
| 2974 } // namespace content | 2984 } // namespace content |
| OLD | NEW |