| Index: third_party/WebKit/LayoutTests/media/media-element-play-after-eos.html
|
| diff --git a/third_party/WebKit/LayoutTests/media/media-element-play-after-eos.html b/third_party/WebKit/LayoutTests/media/media-element-play-after-eos.html
|
| index dcc55461eb1242339a1ed0e8ccf3327c69628b53..be4404e32212da7d0b238e7eb5ac5f2cb511a493 100644
|
| --- a/third_party/WebKit/LayoutTests/media/media-element-play-after-eos.html
|
| +++ b/third_party/WebKit/LayoutTests/media/media-element-play-after-eos.html
|
| @@ -5,39 +5,35 @@
|
| <script src="media-file.js"></script>
|
| <audio></audio>
|
| <script>
|
| -// TODO(srirama.m): Modify the test to record events and check for order
|
| -// at the end of test. See autoplay-with-preload-none.html for help.
|
| async_test(function(t) {
|
| var loop = true;
|
| var audio = document.querySelector("audio");
|
| audio.src = findMediaFile("audio", "content/silence");
|
|
|
| - audio.onloadedmetadata = t.step_func(function() {
|
| - audio.onplaying = t.step_func(mediaPlaying);
|
| -
|
| - audio.onpause = t.step_func(function() {
|
| - assert_true(audio.paused);
|
| - });
|
| -
|
| - audio.onended = t.step_func(function() {
|
| - assert_true(audio.ended, true);
|
| -
|
| - if (!loop) {
|
| - t.done();
|
| - return;
|
| - }
|
| -
|
| - loop = false;
|
| - audio.onplaying = t.step_func(mediaPlaying);
|
| - audio.play();
|
| - });
|
| -
|
| + var watcher = new EventWatcher(t, audio, ["loadedmetadata", "playing", "pause", "ended"]);
|
| + watcher.wait_for("loadedmetadata").then(t.step_func(function() {
|
| audio.play();
|
| - });
|
| -
|
| - function mediaPlaying() {
|
| - audio.onplaying = null;
|
| + return watcher.wait_for("playing");
|
| + })).then(t.step_func(function() {
|
| + audio.currentTime = audio.duration - 0.2;
|
| + return watcher.wait_for("playing");
|
| + })).then(t.step_func(function() {
|
| + return watcher.wait_for("pause");
|
| + })).then(t.step_func(function() {
|
| + assert_true(audio.paused);
|
| + return watcher.wait_for("ended");
|
| + })).then(t.step_func(function() {
|
| + assert_true(audio.ended);
|
| + audio.play();
|
| + return watcher.wait_for("playing");
|
| + })).then(t.step_func(function() {
|
| audio.currentTime = audio.duration - 0.2;
|
| - }
|
| + return watcher.wait_for("playing");
|
| + })).then(t.step_func(function() {
|
| + return watcher.wait_for("pause");
|
| + })).then(t.step_func(function() {
|
| + assert_true(audio.paused);
|
| + return watcher.wait_for("ended");
|
| + })).then(t.step_func_done());
|
| });
|
| </script>
|
|
|