OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE HTML> |
| 2 <html> |
| 3 <body> |
| 4 <video id="testVideo" autoplay="autoplay"></video> |
| 5 <div id="log"></div> |
| 6 <p>Test that setting the HTMLMediaElement.srcObject overrides setting the |
| 7 src attribute and if the srcObject is set to null, media is reloaded from |
| 8 the src attribute.</p> |
| 9 <script src="../resources/testharness.js"></script> |
| 10 <script src="../resources/testharnessreport.js"></script> |
| 11 <script src="./w3c-media-utils.js"></script> |
| 12 <script> |
| 13 var test = async_test("srcObject test"); |
| 14 var video = document.getElementById("testVideo"); |
| 15 var trackevent = "playing"; |
| 16 |
| 17 function startTest() |
| 18 { |
| 19 test.step(() => assert_idl_attribute(video, "srcObject")); |
| 20 video.addEventListener(trackevent, playingFileOnce) |
| 21 video.src = getVideoURI("test"); |
| 22 } |
| 23 |
| 24 function playingFileOnce() |
| 25 { |
| 26 video.removeEventListener(trackevent, playingFileOnce); |
| 27 video.addEventListener(trackevent, playingSrcObject); |
| 28 test.step(_ => assert_equals(video.srcObject, null)); |
| 29 test.step(_ => assert_equals(video.currentSrc, video.src)); |
| 30 navigator.webkitGetUserMedia( |
| 31 {video:true}, |
| 32 stream => video.srcObject = stream, |
| 33 _ => test.step(() => assert_unreached("Did not get mediastream")
)); |
| 34 } |
| 35 |
| 36 function playingSrcObject() |
| 37 { |
| 38 video.removeEventListener(trackevent, playingSrcObject) |
| 39 video.addEventListener(trackevent, playingFileTwice) |
| 40 test.step(() => assert_not_equals(video.srcObject, null)); |
| 41 test.step(() => assert_class_string(video.srcObject, "MediaStream"))
; |
| 42 test.step(() => assert_equals(video.currentSrc, "")); |
| 43 video.srcObject=null; |
| 44 } |
| 45 |
| 46 function playingFileTwice() |
| 47 { |
| 48 test.step(() => assert_equals(video.srcObject, null)); |
| 49 test.step(() => assert_equals(video.currentSrc, video.src)); |
| 50 test.done(); |
| 51 } |
| 52 |
| 53 test.step(startTest); |
| 54 </script> |
| 55 </body> |
| 56 </html> |
OLD | NEW |