<!DOCTYPE HTML>
<html>
 <head>
  <title>Forms</title>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
 </head>
 <body>
  <p>
    <h3>input_validationMessage</h3>
  </p>

  <hr>

  <div id="log"></div>

  <form method="post"
      enctype="application/x-www-form-urlencoded"
      action=""
      id="input_form">
    <p><input type='hidden' id='input_text'></p>
  </form>
  <script>

    var input = document.getElementById("input_text");

    if (typeof(input.validationMessage) == "string") {
      test(function() {
        assert_equals(input.validationMessage, "", "validationMessage attribute is not correct.");
      });
    } else {
      test(function() {
        assert_unreached("validationMessage attribute is not exist.");
      });
    }

  </script>

 </body>
</html>
