<!doctype html>
<html>
 <head>
  <title>video events - loadedmetadata</title>
  <script src="../../w3cwrapper.js"></script>
  <script src="../../../Microsoft/common/media.js"></script>
 </head>
 <body>
  <p><a href="http://dev.w3.org/html5/spec/Overview.html#mediaevents">spec reference</a></p>
  <video id="a" autoplay controls>
  </video>
  <div id="log"></div>
  <script>
var t = async_test("setting src attribute on autoplay video should trigger loadedmetadata event", {timeout:30000});
var a = document.getElementById("a");
a.addEventListener("loadedmetadata", function() {
  t.step(function() {
   assert_true(true);
  });
  t.done();
  a.pause();
});
a.src = getAudioURI("http://media.w3.org/2010/05/sound/sound_5") + "?" + new Date() + Math.random();
  </script>
 </body>
</html>
