Merge pull request #8817 from mrego/multicol-gap-animation
[css-multicol] Add tests related to column-gap animations
diff --git a/css/css-multicol/multicol-gap-animation-001.html b/css/css-multicol/multicol-gap-animation-001.html
new file mode 100644
index 0000000..6a3a8d3
--- /dev/null
+++ b/css/css-multicol/multicol-gap-animation-001.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Multi-column Layout Test: column-gap test animation</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://www.w3.org/TR/css-multicol-1/#column-gap">
+<link rel="help" href="https://www.w3.org/TR/web-animations-1/#dom-animatable-animate">
+<meta name="assert" content="Test checks that column-gap is an animatable property, and that the computed values during the animation are the expected ones.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #multicol {
+ column-gap: 0px;
+ }
+</style>
+<body>
+ <div id="multicol"></div>
+ <div id="log"></div>
+
+ <script>
+ test(
+ function(){
+ var multicol = document.getElementById("multicol");
+ assert_equals(getComputedStyle(multicol).columnGap, "0px");
+
+ var keyframes = [
+ { columnGap: "100px" },
+ { columnGap: "200px" }
+ ];
+ var options = {
+ duration: 10,
+ fill: "forwards",
+ easing: "linear"
+ };
+
+ var player = multicol.animate(keyframes, options);
+ player.pause();
+ player.currentTime = 0;
+ assert_equals(getComputedStyle(multicol).columnGap, "100px");
+ player.currentTime = 5;
+ assert_equals(getComputedStyle(multicol).columnGap, "150px");
+ player.currentTime = 10;
+ assert_equals(getComputedStyle(multicol).columnGap, "200px");
+ }, "column-gap property is animatable");
+ </script>
+</body>
diff --git a/css/css-multicol/multicol-gap-animation-002.html b/css/css-multicol/multicol-gap-animation-002.html
new file mode 100644
index 0000000..de3756c
--- /dev/null
+++ b/css/css-multicol/multicol-gap-animation-002.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Multi-column Layout Test: column-gap normal test animation</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://www.w3.org/TR/css-multicol-1/#column-gap">
+<link rel="help" href="https://www.w3.org/TR/web-animations-1/#dom-animatable-animate">
+<meta name="assert" content="Test checks that 'normal' value for column-gap property is not interpolable.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ @keyframes column-gap-normal-to-100 {
+ from { column-gap: normal; }
+ to { column-gap: 100px; }
+ }
+
+ #multicol {
+ animation-name: column-gap-normal-to-100;
+ animation-duration: 2s;
+ animation-delay: -1s;
+ animation-play-state: paused;
+ }
+</style>
+<body>
+ <div id="multicol"></div>
+ <div id="log"></div>
+
+ <script>
+ test(
+ function(){
+ var multicol = document.getElementById("multicol");
+ assert_equals(getComputedStyle(multicol).columnGap, "100px");
+ }, "column-gap: normal is not interpolable");
+ </script>
+</body>
diff --git a/css/css-multicol/multicol-gap-animation-003.html b/css/css-multicol/multicol-gap-animation-003.html
new file mode 100644
index 0000000..71182fa
--- /dev/null
+++ b/css/css-multicol/multicol-gap-animation-003.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Multi-column Layout Test: Default column-gap test animation</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://www.w3.org/TR/css-multicol-1/#column-gap">
+<link rel="help" href="https://www.w3.org/TR/web-animations-1/#dom-animatable-animate">
+<meta name="assert" content="Test checks that the default value for column-gap property, which is 'normal', is not interpolable.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ @keyframes column-gap-to-100 {
+ to { column-gap: 100px; }
+ }
+
+ #multicol {
+ animation-name: column-gap-to-100;
+ animation-duration: 2s;
+ animation-delay: -1s;
+ animation-play-state: paused;
+ }
+</style>
+<body>
+ <div id="multicol"></div>
+ <div id="log"></div>
+
+ <script>
+ test(
+ function(){
+ var multicol = document.getElementById("multicol");
+ assert_equals(getComputedStyle(multicol).columnGap, "100px");
+ }, "Default column-gap is not interpolable");
+ </script>
+</body>