Part 4: Add parsing for linear easing function and gate it behind pref.

Differential Revision: https://phabricator.services.mozilla.com/D146839

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1764126
gecko-commit: 512e2707c3a3c0495b138ce3370127bc6a712b61
gecko-reviewers: emilio
diff --git a/css/css-animations/parsing/animation-timing-function-linear.tentative.html b/css/css-animations/parsing/animation-timing-function-linear.tentative.html
new file mode 100644
index 0000000..007d7a1
--- /dev/null
+++ b/css/css-animations/parsing/animation-timing-function-linear.tentative.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Animations: getComputedStyle().animationTimingFunction with linear(...)</title>
+<link rel="help" href="https://github.com/w3c/csswg-drafts/pull/6533">
+<meta name="assert" content="animation-timing-function: linear(...) parsing tests">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_valid_value("animation-timing-function", "linear()");
+test_valid_value("animation-timing-function", "linear(0)");
+test_valid_value("animation-timing-function", "linear(0, 1)");
+test_valid_value("animation-timing-function", "linear(0 0% 100%)");
+test_valid_value("animation-timing-function", "linear(0% 100% 0)", "linear(0 0% 100%)");
+test_valid_value("animation-timing-function", "linear(0 0% 50%, 1 50% 100%)");
+test_valid_value("animation-timing-function", "linear(0, 0.5 25% 75%, 1 100% 100%)");
+test_valid_value("animation-timing-function", "linear(0, 1.3, 1, 0.92, 1, 0.99, 1, 1.004, 0.998, 1 100% 100%)");
+
+test_invalid_value("animation-timing-function", "linear(100%)");
+test_invalid_value("animation-timing-function", "linear(0% 1 50%)");
+
+test_computed_value("animation-timing-function", "linear()");
+test_computed_value("animation-timing-function", "linear(0)");
+test_computed_value("animation-timing-function", "linear(0, 1)");
+test_computed_value("animation-timing-function", "linear(0 0% 100%)");
+test_computed_value("animation-timing-function", "linear(0% 100% 0)", "linear(0 0% 100%)");
+test_computed_value("animation-timing-function", "linear(0 0% 50%, 1 50% 100%)");
+test_computed_value("animation-timing-function", "linear(0, 0.5 25% 75%, 1 100% 100%)");
+test_computed_value("animation-timing-function", "linear(0, 1.3, 1, 0.92, 1, 0.99, 1, 1.004, 0.998, 1 100% 100%)");
+</script>
+</body>
+</html>