| <!DOCTYPE html> |
| <html> |
| <head> |
| <title>'play' event</title> |
| <script src=media-file.js></script> |
| <script src=video-test.js></script> |
| <script src=../resources/gc.js></script> |
| |
| <script> |
| async function waitForTestToFinish() |
| { |
| gc(); |
| |
| if (window.internals) |
| await testExpectedEventually('internals.audioSessionActive()', false); |
| |
| endTest(); |
| } |
| |
| function playing() |
| { |
| consoleWrite("EVENT(playing)"); |
| |
| if (window.internals) |
| testExpected('internals.audioSessionActive()', true); |
| |
| let frame = document.getElementById("frame"); |
| frame.parentNode.innerHTML = ''; |
| |
| setTimeout(waitForTestToFinish, 100); |
| } |
| |
| function frameLoaded() |
| { |
| consoleWrite("** iframe loaded."); |
| |
| var standaloneMediaDocument = document.getElementById("frame").contentDocument; |
| let video = standaloneMediaDocument.querySelector("video"); |
| if (!video) { |
| failTest("ERROR: Video element was not found in frameLoaded()."); |
| return; |
| } |
| |
| video.pause(); |
| video.addEventListener('playing', playing); |
| video.play(); |
| } |
| |
| function start() |
| { |
| let frame = document.getElementById("frame"); |
| frame.onload = frameLoaded; |
| frame.src = findMediaFile('audio', 'content/test'); |
| } |
| </script> |
| </head> |
| |
| <body onload="start()"> |
| <p>Test that audio session is deactivated when the last media element with audio is deleted.</p> |
| <div> |
| <iframe id="frame" width=400 height=300"></iframe> |
| </div> |
| </body> |
| </html> |