<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>idlharness test</title>
<link rel="author" title="Kensaku Komatsu" href="mailto:kensaku.komatsu@gmail.com" />
<link rel="help" href="http://www.w3.org/TR/animation-timing/#definitions"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
</head>
<body>
<h1>idlharness test</h1>
<p>This test validates the WebIDL included in the Timing control for script-based animations specification.</p>

<pre id='untested_idl' style='display:none'>
[PrimaryGlobal]
interface Window {
};
</pre>

<pre id='idl'>
partial interface Window {
  long requestAnimationFrame(FrameRequestCallback callback);
  void cancelAnimationFrame(long handle);
};

callback FrameRequestCallback = void (DOMHighResTimeStamp time);
</pre>

<script>

(function() {
  var idl_array = new IdlArray();

  idl_array.add_untested_idls(document.getElementById("untested_idl").textContent);
  idl_array.add_idls(document.getElementById("idl").textContent);

  idl_array.add_objects({Window: ["window"]});

  idl_array.test();
})();

</script>

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

</body>
</html>
