OLD | NEW |
---|---|
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <deque> | 5 #include <deque> |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
9 #include "base/stringprintf.h" | 9 #include "base/stringprintf.h" |
10 #include "base/string_util.h" | 10 #include "base/string_util.h" |
(...skipping 1235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1246 } | 1246 } |
1247 } | 1247 } |
1248 EXPECT_EQ(0, num_prerender_tabs); | 1248 EXPECT_EQ(0, num_prerender_tabs); |
1249 | 1249 |
1250 // We may have deleted the prerender tab, but the swapped in tab should be | 1250 // We may have deleted the prerender tab, but the swapped in tab should be |
1251 // active. | 1251 // active. |
1252 EXPECT_GE(num_tabs_with_prerender_page_title, 1); | 1252 EXPECT_GE(num_tabs_with_prerender_page_title, 1); |
1253 EXPECT_LE(num_tabs_with_prerender_page_title, 2); | 1253 EXPECT_LE(num_tabs_with_prerender_page_title, 2); |
1254 } | 1254 } |
1255 | 1255 |
1256 // Checks that prerenderers will terminate when an audio tag is encountered. | 1256 // Checks that audio loads are deferred on prerendering. |
1257 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5Audio) { | 1257 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5Audio) { |
1258 PrerenderTestURL("files/prerender/prerender_html5_audio.html", | 1258 PrerenderTestURL("files/prerender/prerender_html5_audio.html", |
1259 FINAL_STATUS_HTML5_MEDIA, | 1259 FINAL_STATUS_USED, |
1260 1); | 1260 1); |
1261 string16 expected_title = ASCIIToUTF16("PASS"); | |
1262 ui_test_utils::TitleWatcher title_watcher( | |
1263 GetPrerenderContents()->prerender_contents()->tab_contents(), | |
1264 expected_title); | |
1265 NavigateToDestURL(); | |
1266 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); | |
1261 } | 1267 } |
1262 | 1268 |
1263 // Checks that prerenderers will terminate when a video tag is encountered. | 1269 // Checks that audio loads are deferred on prerendering and played back when |
1270 // the prerender is swapped in if autoplay is set. | |
1271 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5AudioAutoplay) { | |
1272 PrerenderTestURL("files/prerender/prerender_html5_audio_autoplay.html", | |
1273 FINAL_STATUS_USED, | |
1274 1); | |
1275 string16 expected_title = ASCIIToUTF16("PASS"); | |
1276 ui_test_utils::TitleWatcher title_watcher( | |
1277 GetPrerenderContents()->prerender_contents()->tab_contents(), | |
1278 expected_title); | |
1279 NavigateToDestURL(); | |
1280 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); | |
1281 } | |
1282 | |
1283 // Checks that audio loads are deferred on prerendering and played back when | |
1284 // the prerender is swapped in if js starts playing. | |
1285 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5AudioJsplay) { | |
1286 PrerenderTestURL("files/prerender/prerender_html5_audio_jsplay.html", | |
1287 FINAL_STATUS_USED, | |
1288 1); | |
1289 string16 expected_title = ASCIIToUTF16("PASS"); | |
1290 ui_test_utils::TitleWatcher title_watcher( | |
1291 GetPrerenderContents()->prerender_contents()->tab_contents(), | |
1292 expected_title); | |
1293 NavigateToDestURL(); | |
1294 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); | |
1295 } | |
1296 | |
1297 // Checks that video loads are deferred on prerendering. | |
1264 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5Video) { | 1298 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5Video) { |
1265 PrerenderTestURL("files/prerender/prerender_html5_video.html", | 1299 PrerenderTestURL("files/prerender/prerender_html5_video.html", |
1266 FINAL_STATUS_HTML5_MEDIA, | 1300 FINAL_STATUS_USED, |
1267 1); | 1301 1); |
1302 string16 expected_title = ASCIIToUTF16("PASS"); | |
1303 ui_test_utils::TitleWatcher title_watcher( | |
1304 GetPrerenderContents()->prerender_contents()->tab_contents(), | |
1305 expected_title); | |
1306 NavigateToDestURL(); | |
1307 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); | |
1268 } | 1308 } |
1269 | 1309 |
1270 // Checks that prerenderers will terminate when a video tag is inserted via | 1310 // Checks that video tags inserted by javascript are deferred and played |
scherkus (not reviewing)
2011/11/08 06:21:06
nit: "and played " -> "and played"
Shishir
2011/11/09 22:27:47
Done.
| |
1271 // javascript. | 1311 // correctly on swap in. |
1272 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5VideoJs) { | 1312 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHTML5VideoJs) { |
1273 PrerenderTestURL("files/prerender/prerender_html5_video_script.html", | 1313 PrerenderTestURL("files/prerender/prerender_html5_video_script.html", |
1274 FINAL_STATUS_HTML5_MEDIA, | 1314 FINAL_STATUS_USED, |
1275 1); | 1315 1); |
1316 string16 expected_title = ASCIIToUTF16("PASS"); | |
1317 ui_test_utils::TitleWatcher title_watcher( | |
1318 GetPrerenderContents()->prerender_contents()->tab_contents(), | |
1319 expected_title); | |
1320 NavigateToDestURL(); | |
1321 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); | |
1276 } | 1322 } |
1277 | 1323 |
1278 // Checks that scripts can retrieve the correct window size while prerendering. | 1324 // Checks that scripts can retrieve the correct window size while prerendering. |
1279 #if defined(TOOLKIT_VIEWS) | 1325 #if defined(TOOLKIT_VIEWS) |
1280 // TODO(beng): Widget hierarchy split causes this to fail http://crbug.com/82363 | 1326 // TODO(beng): Widget hierarchy split causes this to fail http://crbug.com/82363 |
1281 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, DISABLED_PrerenderWindowSize) { | 1327 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, DISABLED_PrerenderWindowSize) { |
1282 #else | 1328 #else |
1283 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderWindowSize) { | 1329 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderWindowSize) { |
1284 #endif | 1330 #endif |
1285 PrerenderTestURL("files/prerender/prerender_size.html", | 1331 PrerenderTestURL("files/prerender/prerender_size.html", |
(...skipping 551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1837 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderSessionStorage) { | 1883 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderSessionStorage) { |
1838 set_loader_path("files/prerender/prerender_loader_with_session_storage.html"); | 1884 set_loader_path("files/prerender/prerender_loader_with_session_storage.html"); |
1839 PrerenderTestURL(GetCrossDomainTestUrl("files/prerender/prerender_page.html"), | 1885 PrerenderTestURL(GetCrossDomainTestUrl("files/prerender/prerender_page.html"), |
1840 FINAL_STATUS_USED, | 1886 FINAL_STATUS_USED, |
1841 1); | 1887 1); |
1842 NavigateToDestURL(); | 1888 NavigateToDestURL(); |
1843 GoBackToPageBeforePrerender(browser()); | 1889 GoBackToPageBeforePrerender(browser()); |
1844 } | 1890 } |
1845 | 1891 |
1846 } // namespace prerender | 1892 } // namespace prerender |
OLD | NEW |