Chromium Code Reviews| Index: chrome/browser/prerender/prerender_browsertest.cc |
| diff --git a/chrome/browser/prerender/prerender_browsertest.cc b/chrome/browser/prerender/prerender_browsertest.cc |
| index 62035ec1cf75629aa182e7f0864c19ee213ad653..749372c8319a81876468903bc00940d308890e59 100644 |
| --- a/chrome/browser/prerender/prerender_browsertest.cc |
| +++ b/chrome/browser/prerender/prerender_browsertest.cc |
| @@ -1256,26 +1256,72 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderTaskManager) { |
| EXPECT_LE(num_tabs_with_prerender_page_title, 2); |
| } |
| -// Checks that prerenderers will terminate when an audio tag is encountered. |
| +// Checks that audio loads are deferred on prerendering. |
| IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5Audio) { |
| PrerenderTestURL("files/prerender/prerender_html5_audio.html", |
| - FINAL_STATUS_HTML5_MEDIA, |
| + FINAL_STATUS_USED, |
| 1); |
| + string16 expected_title = ASCIIToUTF16("PASS"); |
| + ui_test_utils::TitleWatcher title_watcher( |
| + GetPrerenderContents()->prerender_contents()->tab_contents(), |
| + expected_title); |
| + NavigateToDestURL(); |
| + EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); |
| } |
| -// Checks that prerenderers will terminate when a video tag is encountered. |
| +// Checks that audio loads are deferred on prerendering and played back when |
| +// the prerender is swapped in if autoplay is set. |
| +IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5AudioAutoplay) { |
| + PrerenderTestURL("files/prerender/prerender_html5_audio_autoplay.html", |
| + FINAL_STATUS_USED, |
| + 1); |
| + string16 expected_title = ASCIIToUTF16("PASS"); |
|
cbentzel
2011/11/15 18:55:33
Move the rest of this method into a helper functio
Shishir
2011/11/17 21:18:49
Done.
|
| + ui_test_utils::TitleWatcher title_watcher( |
| + GetPrerenderContents()->prerender_contents()->tab_contents(), |
| + expected_title); |
| + NavigateToDestURL(); |
| + EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); |
| +} |
| + |
| +// Checks that audio loads are deferred on prerendering and played back when |
| +// the prerender is swapped in if js starts playing. |
| +IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5AudioJsplay) { |
| + PrerenderTestURL("files/prerender/prerender_html5_audio_jsplay.html", |
| + FINAL_STATUS_USED, |
| + 1); |
| + string16 expected_title = ASCIIToUTF16("PASS"); |
| + ui_test_utils::TitleWatcher title_watcher( |
| + GetPrerenderContents()->prerender_contents()->tab_contents(), |
| + expected_title); |
| + NavigateToDestURL(); |
| + EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); |
| +} |
| + |
| +// Checks that video loads are deferred on prerendering. |
| IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5Video) { |
| PrerenderTestURL("files/prerender/prerender_html5_video.html", |
| - FINAL_STATUS_HTML5_MEDIA, |
| + FINAL_STATUS_USED, |
| 1); |
| + string16 expected_title = ASCIIToUTF16("PASS"); |
| + ui_test_utils::TitleWatcher title_watcher( |
| + GetPrerenderContents()->prerender_contents()->tab_contents(), |
| + expected_title); |
| + NavigateToDestURL(); |
| + EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); |
| } |
| -// Checks that prerenderers will terminate when a video tag is inserted via |
| -// javascript. |
| +// Checks that video tags inserted by javascript are deferred and played |
| +// correctly on swap in. |
| IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5VideoJs) { |
| PrerenderTestURL("files/prerender/prerender_html5_video_script.html", |
| - FINAL_STATUS_HTML5_MEDIA, |
| + FINAL_STATUS_USED, |
| 1); |
| + string16 expected_title = ASCIIToUTF16("PASS"); |
| + ui_test_utils::TitleWatcher title_watcher( |
| + GetPrerenderContents()->prerender_contents()->tab_contents(), |
| + expected_title); |
| + NavigateToDestURL(); |
| + EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); |
| } |
| // Checks that scripts can retrieve the correct window size while prerendering. |