<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"><!-- webkit-test-runner [ enableModernMediaControls=false ] -->
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
<style>
div.absolute {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 400px;
    height: 200px;
    border: 1px solid #73AD21;
}
</style>
</head>

<body id="body">

<div class="absolute" id="container" tabindex=0 id="region" title="region">
<video id="video" width="400" height="200" controls>
  <source src="" type="video/mp4">
  Test Video.
</video>
</div>

<p id="description"></p>
<div id="console"></div>

<script>

    description("This tests that video tag's volume slider has percentage value description and 0.05 step.");

    if (window.accessibilityController) {
    
          var video = accessibilityController.accessibleElementById("container").childAtIndex(0);
          var slider = video.childAtIndex(0).childAtIndex(6);
          
          // First make sure the value description is in percentage.
          shouldBe("slider.valueDescription", "'AXValueDescription: 100%'");
          
          // Then decrement the slider and check the step is 0.05.
          slider.decrement();
          shouldBe("slider.valueDescription", "'AXValueDescription: 95%'");
}

</script>

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