<!DOCTYPE HTML>
<html>
  <head>
    <title>Progress Element Tests</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    <link rel="author" title="Microsoft" href="http://www.microsoft.com" />
    <link rel="help" href="https://html.spec.whatwg.org/multipage/#the-progress-element" />
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <div id="log"></div>
    <progress id="p00" style="display: none"></progress>
    <progress id="p01" max="5.5" value=".5" style="display: none"></progress>
    <script>
      test(function () {
        assert_equals(document.getElementById('p00').position, -1);
      }, "progress position equals -1");

      test(function () {
        assert_equals(document.getElementById('p00').value, 0);
      }, "progress value equals 0");

      test(function () {
        assert_equals(document.getElementById('p01').value, .5);
      }, "progress value equals .5");

      test(function () {
        document.getElementById('p00').value = document.getElementById('p00').value;
        assert_equals(document.getElementById('p00').position, 0);
      }, "progress position equals 0");
    </script>
  </body>
</html>
