<script src="../../../resources/js-test-pre.js"></script>
<script src="../resources/media-controls-loader.js" type="text/javascript"></script>
<body>
<video src="../../content/test.mp4" style="width: 320px; height: 240px;" controls></video>
<div id="shadow"></div>
<script type="text/javascript">

window.jsTestIsAsync = true;

description("Testing the <code>RemainingTimeSupport</code> behavior.");

const shadowRoot = document.querySelector("div#shadow").attachShadow({ mode: "open" });
const media = document.querySelector("video");
const mediaController = createControls(shadowRoot, media, null);

mediaController.controls.timeControl.durationTimeLabel?.element.click();

media.addEventListener("timeupdate", (event) => {
    debug("");
    debug("timeupdate event was dispatched");
    shouldBecomeEqual("mediaController.controls.timeControl.remainingTimeLabel.value", "media.currentTime - media.duration", () => {
        debug("");
        shadowRoot.host.remove();
        media.remove();
        finishJSTest();
    });
});

media.addEventListener("durationchange", event => {
    debug("durationchange event was dispatched");
    shouldBecomeEqual("mediaController.controls.timeControl.remainingTimeLabel.value", "-media.duration", () => {
        media.currentTime = 2;
    });
});

</script>
<script src="../../../resources/js-test-post.js"></script>
</body>
