<!DOCTYPE html>
<html>
<title>The scroll() timeline source</title>
<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#scroll-notation">
<link rel="help" href="https://drafts.csswg.org/css-animations-2/#animation-timeline">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

<style>
  @keyframes move {
    to { margin-left: 100px }
  }

  .animated {
    animation: move 1s linear;
  }

  #default {
    animation-timeline: scroll();
  }

  #root {
    animation-timeline: scroll(root);
  }

  #nearest {
    animation-timeline: scroll(nearest);
  }
</style>

<div class="animated" id="default"></div>
<div class="animated" id="root"></div>
<div class="animated" id="nearest"></div>

<script>
"use strict";

const timelineSourceTest = type => {
  test(() => {
    const target = document.getElementById(type);
    const animations = target.getAnimations();
    assert_equals(animations.length, 1);
    assert_equals(animations[0].timeline.source, document.documentElement);
  }, `CSS animation correctly uses the <html> element as the source for the ${type} scroll() timeline`);
};

timelineSourceTest("default");
timelineSourceTest("root");
timelineSourceTest("nearest");

</script>
