Bug 1526730 [wpt PR 15280] - [Animation Worklet] Upstream web tests (related to setting values) to WPT, a=testonly
authorJordan Taylor <jortaylo@microsoft.com>
Tue, 19 Feb 2019 14:38:44 +0000
changeset 519231 c4da5566b9663c79809d741bc7ca21ff28653ec9
parent 519230 8b67c6a2fd48ee4d3604e9973564c681e08a8e0d
child 519232 da00dfebf895b0652a307efbd210ecf680c97ff3
push id10862
push userffxbld-merge
push dateMon, 11 Mar 2019 13:01:11 +0000
treeherdermozilla-beta@a2e7f5c935da [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1526730, 15280, 915352, 1459069, 630554
milestone67.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1526730 [wpt PR 15280] - [Animation Worklet] Upstream web tests (related to setting values) to WPT, a=testonly Automatic update from web-platform-tests [Animation Worklet] Upstream web tests (related to setting values) to WPT web_tests/animations/animationworklet/worklet-animation-set-keyframes.html -> web_tests/external/wpt/animation-worklet/worklet-animation-set-keyframes.https.html web_tests/animations/animationworklet/worklet-animation-set-keyframes-expected.html -> web_tests/external/wpt/animation-worklet/worklet-animation-set-keyframes-ref.html web_tests/animations/animationworklet/worklet-animation-set-timing.html -> web_tests/external/wpt/animation-worklet/worklet-animation-set-timing.https.html web_tests/animations/animationworklet/worklet-animation-set-timing-expected.html -> web_tests/external/wpt/animation-worklet/worklet-animation-set-timing-ref.html Bug: 915352 Change-Id: I95f69fcfaea64b8d779e136facb87b6f5c16c27c Reviewed-on: https://chromium-review.googlesource.com/c/1459069 Reviewed-by: Yi Gu <yigu@chromium.org> Commit-Queue: Jordan Taylor <jortaylo@microsoft.com> Cr-Commit-Position: refs/heads/master@{#630554} -- wpt-commits: 8320b02221923df3b7813b13333fb4fe8890a0fe wpt-pr: 15280
testing/web-platform/tests/animation-worklet/worklet-animation-set-keyframes-ref.html
testing/web-platform/tests/animation-worklet/worklet-animation-set-keyframes.https.html
testing/web-platform/tests/animation-worklet/worklet-animation-set-timing-ref.html
testing/web-platform/tests/animation-worklet/worklet-animation-set-timing.https.html
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/animation-worklet/worklet-animation-set-keyframes-ref.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<title>Reference for Worklet Animation sets keyframes</title>
+<style>
+#box {
+  width: 100px;
+  height: 100px;
+  transform: translateX(100px);
+  background-color: green;
+}
+</style>
+
+<div id="box"></div>
\ No newline at end of file
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/animation-worklet/worklet-animation-set-keyframes.https.html
@@ -0,0 +1,44 @@
+<html class="reftest-wait">
+<title>Worklet Animation sets keyframes</title>
+<link rel="help" href="https://drafts.css-houdini.org/css-animationworklet/">
+<meta name="assert" content="Can update the keyframes for an effect while the animation is running">
+<link rel="match" href="worklet-animation-set-keyframes-ref.html">
+
+<script src="/web-animations/testcommon.js"></script>
+<script src="/common/reftest-wait.js"></script>
+<script src="common.js"></script>
+
+<style>
+  #box {
+    width: 100px;
+    height: 100px;
+    background-color: green;
+  }
+</style>
+
+<div id="box"></div>
+
+<script>
+  registerConstantLocalTimeAnimator(500).then(()=>{
+    const keyframes_before = [
+      { transform: 'translateY(0)' },
+      { transform: 'translateY(200px)' }
+    ];
+    const keyframes_after = [
+      { transform: 'translateX(0)' },
+      { transform: 'translateX(200px)' }
+    ];
+
+    const box = document.getElementById('box');
+    const effect = new KeyframeEffect(box, keyframes_before, {duration: 1000});
+    const animation = new WorkletAnimation('constant_time', effect);
+    animation.play();
+
+    waitForAsyncAnimationFrames(1).then(_ => {
+      effect.setKeyframes(keyframes_after);
+      waitForAsyncAnimationFrames(1).then(_ => {
+        takeScreenshot();
+      });
+    });
+  });
+</script>
\ No newline at end of file
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/animation-worklet/worklet-animation-set-timing-ref.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<title>Reference for Worklet Animation sets timing</title>
+<style>
+#box {
+  width: 100px;
+  height: 100px;
+  transform: translateX(50px);
+  background-color: green;
+}
+</style>
+
+<div id="box"></div>
\ No newline at end of file
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/animation-worklet/worklet-animation-set-timing.https.html
@@ -0,0 +1,46 @@
+<html class="reftest-wait">
+<title>Worklet Animation sets timing</title>
+<link rel="help" href="https://drafts.css-houdini.org/css-animationworklet/">
+<meta name="assert" content="Can update the timing for an effect while the animation is running">
+<link rel="match" href="worklet-animation-set-timing-ref.html">
+
+<script src="/web-animations/testcommon.js"></script>
+<script src="/common/reftest-wait.js"></script>
+<script src="common.js"></script>
+
+<style>
+  #box {
+    width: 100px;
+    height: 100px;
+    background-color: green;
+  }
+</style>
+
+<div id="box"></div>
+
+<script>
+  registerConstantLocalTimeAnimator(500).then(()=>{
+    const keyframes = [
+      { transform: 'translateX(0)' },
+      { transform: 'translateX(200px)' }
+    ];
+    const options_before = {
+      duration: 1000
+    };
+    const options_after = {
+      duration: 2000
+    };
+
+    const box = document.getElementById('box');
+    const effect = new KeyframeEffect(box, keyframes, options_before);
+    const animation = new WorkletAnimation('constant_time', effect);
+    animation.play();
+
+    waitForAsyncAnimationFrames(1).then(_ => {
+      effect.updateTiming(options_after);
+      waitForAsyncAnimationFrames(1).then(_ => {
+        takeScreenshot();
+      });
+    });
+  });
+</script>
\ No newline at end of file