<!doctype html>
<title>cancelAnimationFrame cancels a pending animation frame callback</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://html.spec.whatwg.org/multipage/imagebitmap-and-animations.html#run-the-animation-frame-callbacks">
<div id="log"></div>
<script>
async_test(t => {
  let didCall = false;

  function callbackOne() {
    cancelAnimationFrame(twoHandle);
    requestAnimationFrame(t.step_func(() => {
      assert_false(didCall, 'Should NOT have called the second callback');
      t.done();
    }));
  }

  function callbackTwo() {
    didCall = true;
  }

  requestAnimationFrame(callbackOne);
  const twoHandle = requestAnimationFrame(callbackTwo);
}, 'cancelAnimationFrame cancels a pending animation frame callback');
</script>
