| Index: chrome/test/data/prerender/prerender_html5_audio.html
|
| diff --git a/chrome/test/data/prerender/prerender_html5_audio.html b/chrome/test/data/prerender/prerender_html5_audio.html
|
| index 7a03e20c15d4fa47389f09b3f2eae20c6d316936..8126d566f4225d124105fcfd293c44e4a8c5dae5 100644
|
| --- a/chrome/test/data/prerender/prerender_html5_audio.html
|
| +++ b/chrome/test/data/prerender/prerender_html5_audio.html
|
| @@ -1,14 +1,55 @@
|
| <html>
|
| <!--
|
| - This test checks that prerender is cancelled when an audio tag is
|
| - encountered.
|
| + This test checks that audio tags are deferred during prerendering.
|
| -->
|
| - <head>
|
| - <title>Prerender cancellation for HTML5 audio.</title>
|
| - </head>
|
| - <body>
|
| - <audio controls="controls" autoplay="autoplay">
|
| - <source src="nonexistant.wav" type="audio/wav" />
|
| - </audio>
|
| - </body>
|
| +<head>
|
| +<title>Prerender for HTML5 audio.</title>
|
| +</head>
|
| +
|
| +<body>
|
| +<audio id="audioEl" controls>
|
| + <source src="bear.wav" type="audio/wav" />
|
| +</audio>
|
| +
|
| +<script>
|
| +var canPlaySeen = false;
|
| +var playingSeen = false;
|
| +var hasError = false;
|
| +
|
| +var audioEl = document.getElementById("audioEl");
|
| +
|
| +function audioEventHandler(e) {
|
| + console.log(e.type);
|
| +
|
| + if (e.type == 'canplay') {
|
| + canPlaySeen = true;
|
| + } else if (e.type == 'playing') {
|
| + playingSeen = true;
|
| + } else if (e.type == 'error') {
|
| + hasError = true;
|
| + } else if (e.type == 'canplaythrough') {
|
| + if (!playingSeen && canPlaySeen)
|
| + document.title = "PASS";
|
| + }
|
| +}
|
| +
|
| +audioEl.addEventListener('playing', audioEventHandler, false);
|
| +audioEl.addEventListener('canplay', audioEventHandler, false);
|
| +audioEl.addEventListener('canplaythrough', audioEventHandler, false);
|
| +audioEl.addEventListener('error', audioEventHandler, false);
|
| +
|
| +function DidPrerenderPass() {
|
| + // The audio should not have started at this point.
|
| + return !canPlaySeen && !playingSeen && !hasError &&
|
| + audioEl.currentTime == 0 &&
|
| + audioEl.readyState == audioEl.HAVE_NOTHING;
|
| +}
|
| +
|
| +function DidDisplayPass() {
|
| + // The actual test is done via the TitleWatcher.
|
| + return true;
|
| +}
|
| +
|
| +</script>
|
| +</body>
|
| </html>
|
|
|