Bug 1429298 - Part 7: Tests. r=emilio
☠☠ backed out by e03480382807 ☠ ☠
authorBoris Chiou <boris.chiou@gmail.com>
Wed, 22 Aug 2018 01:23:14 +0000
changeset 490487 48214a8e1b6bc794ee0ec36d18e7099aa3250fa5
parent 490486 cc2785ab879e48a01bf87c20aaebedbad0277574
child 490488 f19665cdf117575dba6b29c8a47553067858a3e9
push id1815
push userffxbld-merge
push dateMon, 15 Oct 2018 10:40:45 +0000
treeherdermozilla-release@18d4c09e9378 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersemilio
bugs1429298
milestone63.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 1429298 - Part 7: Tests. r=emilio In wpt, now we support "offset-path: none | path()", so parsing none or path function should be correct. Animations which animate "from none" or "to none" will pass because we could serialize "none", even if we don't support animations on offset-path. Depends on D2968 Differential Revision: https://phabricator.services.mozilla.com/D2969
modules/libpref/init/all.js
testing/web-platform/meta/MANIFEST.json
testing/web-platform/meta/css/motion/__dir__.ini
testing/web-platform/meta/css/motion/animation/offset-path-interpolation-001.html.ini
testing/web-platform/meta/css/motion/animation/offset-path-interpolation-002.html.ini
testing/web-platform/meta/css/motion/animation/offset-path-interpolation-003.html.ini
testing/web-platform/meta/css/motion/animation/offset-path-interpolation-004.html.ini
testing/web-platform/meta/css/motion/animation/offset-path-interpolation-005.html.ini
testing/web-platform/meta/css/motion/offset-path-string-001.html.ini
testing/web-platform/meta/css/motion/offset-path-string.html.ini
testing/web-platform/meta/css/motion/parsing/offset-path-parsing-valid.html.ini
testing/web-platform/tests/css/motion/offset-path-string-001.html
testing/web-platform/tests/css/motion/offset-path-string-002.html
testing/web-platform/tests/css/motion/offset-path-string.html
testing/web-platform/tests/css/motion/parsing/offset-path-parsing-invalid.html
testing/web-platform/tests/css/motion/parsing/offset-path-parsing-valid.html
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -3069,17 +3069,21 @@ pref("layout.css.column-span.enabled", f
 
 // Are inter-character ruby annotations enabled?
 pref("layout.css.ruby.intercharacter.enabled", false);
 
 // Is support for overscroll-behavior enabled?
 pref("layout.css.overscroll-behavior.enabled", true);
 
 // Is support for motion-path enabled?
+#ifdef RELEASE_OR_BETA
 pref("layout.css.motion-path.enabled", false);
+#else
+pref("layout.css.motion-path.enabled", true);
+#endif
 
 // pref for which side vertical scrollbars should be on
 // 0 = end-side in UI direction
 // 1 = end-side in document/content direction
 // 2 = right
 // 3 = left
 pref("layout.scrollbar.side", 0);
 
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -165086,19 +165086,31 @@
       [
        "/css/motion/offset-path-ray-ref.html",
        "=="
       ]
      ],
      {}
     ]
    ],
-   "css/motion/offset-path-string.html": [
-    [
-     "/css/motion/offset-path-string.html",
+   "css/motion/offset-path-string-001.html": [
+    [
+     "/css/motion/offset-path-string-001.html",
+     [
+      [
+       "/css/motion/offset-path-string-ref.html",
+       "=="
+      ]
+     ],
+     {}
+    ]
+   ],
+   "css/motion/offset-path-string-002.html": [
+    [
+     "/css/motion/offset-path-string-002.html",
      [
       [
        "/css/motion/offset-path-string-ref.html",
        "=="
       ]
      ],
      {}
     ]
@@ -568261,24 +568273,28 @@
   "css/motion/offset-path-ray-ref.html": [
    "fde97bd6b15cca64c06cd305822ad87dc008410f",
    "support"
   ],
   "css/motion/offset-path-ray.html": [
    "6c39e7b8f4cfafe05c07d166eb65570432912b7a",
    "reftest"
   ],
+  "css/motion/offset-path-string-001.html": [
+   "79d957d82b8e3c603ed16598f461a805c90681dd",
+   "reftest"
+  ],
+  "css/motion/offset-path-string-002.html": [
+   "0d2fcbbb661c2fe0e5b57ff780d78b2f8b6f627b",
+   "reftest"
+  ],
   "css/motion/offset-path-string-ref.html": [
    "5c5ff5f6f2ddc4696f2d51266199fe052464d9e6",
    "support"
   ],
-  "css/motion/offset-path-string.html": [
-   "79d957d82b8e3c603ed16598f461a805c90681dd",
-   "reftest"
-  ],
   "css/motion/offset-rotate-001.html": [
    "55147698a7f2f02a57f0fe3adc8b33257d1e212f",
    "reftest"
   ],
   "css/motion/offset-rotate-002.html": [
    "fb301be24efc2aa2e50da0aabe6009553b92b655",
    "reftest"
   ],
@@ -568310,21 +568326,21 @@
    "343d22e46b4714dde6f484b37ae8d3fd8772460a",
    "testharness"
   ],
   "css/motion/parsing/offset-parsing-valid.html": [
    "b645199f3a13015941648df08d8583b9a7fc7fed",
    "testharness"
   ],
   "css/motion/parsing/offset-path-parsing-invalid.html": [
-   "c0a32486922b4b1b482817f409571e1e6c4219f7",
+   "7fbd06a508a322ac0969eb11c4299de50fd254e7",
    "testharness"
   ],
   "css/motion/parsing/offset-path-parsing-valid.html": [
-   "c1e229e1a05a4c85845384ace9b884125f579415",
+   "e7797686e4ac524ac9dc9f8525dbd5a24adeec29",
    "testharness"
   ],
   "css/motion/parsing/offset-position-parsing-invalid.html": [
    "42370d44a38c2618d7f556d6be4b7a206e76b7e7",
    "testharness"
   ],
   "css/motion/parsing/offset-position-parsing-valid.html": [
    "3cf235cc855fc7e1325610ce4170974b746f1182",
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/meta/css/motion/__dir__.ini
@@ -0,0 +1,1 @@
+prefs: [layout.css.motion-path.enabled:true]
--- a/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-001.html.ini
+++ b/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-001.html.ini
@@ -1,12 +1,9 @@
 [offset-path-interpolation-001.html]
-  ["path('M 0 0 H 1 H 2')" and "path('M 0 0 H 3')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 0 0 H 1 H 2')" and "path('M 0 0 H 3')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 0 0 H 1 H 2')" and "path('M 0 0 H 3')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 0 0 H 1 H 2')" and "path('M 0 0 H 3')" at progress 0.125]
     expected: FAIL
@@ -15,40 +12,25 @@
     expected: FAIL
 
   [Animation between "path('M 0 0 H 1 H 2')" and "path('M 0 0 H 3')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 0 0 H 1 H 2')" and "path('M 0 0 H 3')" at progress 2]
     expected: FAIL
 
-  ["path('M 1 2 L 3 4 Z')" and "none" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 1 2 L 3 4 Z')" and "none" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 1 2 L 3 4 Z')" and "none" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 1 2 L 3 4 Z')" and "none" at progress 0.125]
     expected: FAIL
 
-  [Animation between "path('M 1 2 L 3 4 Z')" and "none" at progress 0.875]
-    expected: FAIL
-
-  [Animation between "path('M 1 2 L 3 4 Z')" and "none" at progress 1]
-    expected: FAIL
-
-  [Animation between "path('M 1 2 L 3 4 Z')" and "none" at progress 2]
-    expected: FAIL
-
-  ["path('M 10 0 H 11')" and "path('M 20 0 V 2')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 10 0 H 11')" and "path('M 20 0 V 2')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 10 0 H 11')" and "path('M 20 0 V 2')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 10 0 H 11')" and "path('M 20 0 V 2')" at progress 0.125]
     expected: FAIL
@@ -57,19 +39,16 @@
     expected: FAIL
 
   [Animation between "path('M 10 0 H 11')" and "path('M 20 0 V 2')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 10 0 H 11')" and "path('M 20 0 V 2')" at progress 2]
     expected: FAIL
 
-  ["path('M 1 2 L 4 6 Z')" and "path('M 1 2 H 4 V 6')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 1 2 L 4 6 Z')" and "path('M 1 2 H 4 V 6')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 1 2 L 4 6 Z')" and "path('M 1 2 H 4 V 6')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 1 2 L 4 6 Z')" and "path('M 1 2 H 4 V 6')" at progress 0.125]
     expected: FAIL
@@ -78,19 +57,16 @@
     expected: FAIL
 
   [Animation between "path('M 1 2 L 4 6 Z')" and "path('M 1 2 H 4 V 6')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 1 2 L 4 6 Z')" and "path('M 1 2 H 4 V 6')" at progress 2]
     expected: FAIL
 
-  ["path('M 0 0 Z')" and "path('M 0 0 Z')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 0 0 Z')" and "path('M 0 0 Z')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 0 0 Z')" and "path('M 0 0 Z')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 0 0 Z')" and "path('M 0 0 Z')" at progress 0.125]
     expected: FAIL
@@ -99,19 +75,16 @@
     expected: FAIL
 
   [Animation between "path('M 0 0 Z')" and "path('M 0 0 Z')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 0 0 Z')" and "path('M 0 0 Z')" at progress 2]
     expected: FAIL
 
-  ["path('M 20 70')" and "path('M 100 30')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 20 70')" and "path('M 100 30')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 20 70')" and "path('M 100 30')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 20 70')" and "path('M 100 30')" at progress 0.125]
     expected: FAIL
@@ -120,19 +93,16 @@
     expected: FAIL
 
   [Animation between "path('M 20 70')" and "path('M 100 30')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 20 70')" and "path('M 100 30')" at progress 2]
     expected: FAIL
 
-  ["path('m 20 70')" and "path('m 100 30')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 20 70')" and "path('m 100 30')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 20 70')" and "path('m 100 30')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 20 70')" and "path('m 100 30')" at progress 0.125]
     expected: FAIL
@@ -141,19 +111,16 @@
     expected: FAIL
 
   [Animation between "path('m 20 70')" and "path('m 100 30')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 20 70')" and "path('m 100 30')" at progress 2]
     expected: FAIL
 
-  ["path('m 100 200 L 120 270')" and "path('m 100 200 L 200 230')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 100 200 L 120 270')" and "path('m 100 200 L 200 230')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 100 200 L 120 270')" and "path('m 100 200 L 200 230')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 100 200 L 120 270')" and "path('m 100 200 L 200 230')" at progress 0.125]
     expected: FAIL
@@ -162,19 +129,16 @@
     expected: FAIL
 
   [Animation between "path('m 100 200 L 120 270')" and "path('m 100 200 L 200 230')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 100 200 L 120 270')" and "path('m 100 200 L 200 230')" at progress 2]
     expected: FAIL
 
-  ["path('m 100 200 l 20 70')" and "path('m 100 200 l 100 30')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 100 200 l 20 70')" and "path('m 100 200 l 100 30')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 100 200 l 20 70')" and "path('m 100 200 l 100 30')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 100 200 l 20 70')" and "path('m 100 200 l 100 30')" at progress 0.125]
     expected: FAIL
--- a/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-002.html.ini
+++ b/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-002.html.ini
@@ -1,12 +1,9 @@
 [offset-path-interpolation-002.html]
-  ["path('M 20 10 C 32 42 52 62 120 2200')" and "path('M 20 10 C 40 50 60 70 200 3000')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 20 10 C 32 42 52 62 120 2200')" and "path('M 20 10 C 40 50 60 70 200 3000')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 20 10 C 32 42 52 62 120 2200')" and "path('M 20 10 C 40 50 60 70 200 3000')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 20 10 C 32 42 52 62 120 2200')" and "path('M 20 10 C 40 50 60 70 200 3000')" at progress 0.125]
     expected: FAIL
@@ -15,19 +12,16 @@
     expected: FAIL
 
   [Animation between "path('M 20 10 C 32 42 52 62 120 2200')" and "path('M 20 10 C 40 50 60 70 200 3000')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 20 10 C 32 42 52 62 120 2200')" and "path('M 20 10 C 40 50 60 70 200 3000')" at progress 2]
     expected: FAIL
 
-  ["path('m 20 10 c 12 32 32 52 100 2190')" and "path('m 20 10 c 20 40 40 60 180 2990')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 20 10 c 12 32 32 52 100 2190')" and "path('m 20 10 c 20 40 40 60 180 2990')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 20 10 c 12 32 32 52 100 2190')" and "path('m 20 10 c 20 40 40 60 180 2990')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 20 10 c 12 32 32 52 100 2190')" and "path('m 20 10 c 20 40 40 60 180 2990')" at progress 0.125]
     expected: FAIL
@@ -36,19 +30,16 @@
     expected: FAIL
 
   [Animation between "path('m 20 10 c 12 32 32 52 100 2190')" and "path('m 20 10 c 20 40 40 60 180 2990')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 20 10 c 12 32 32 52 100 2190')" and "path('m 20 10 c 20 40 40 60 180 2990')" at progress 2]
     expected: FAIL
 
-  ["path('M 20 10 Q 32 42 120 2200')" and "path('M 20 10 Q 40 50 200 3000')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 20 10 Q 32 42 120 2200')" and "path('M 20 10 Q 40 50 200 3000')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 20 10 Q 32 42 120 2200')" and "path('M 20 10 Q 40 50 200 3000')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 20 10 Q 32 42 120 2200')" and "path('M 20 10 Q 40 50 200 3000')" at progress 0.125]
     expected: FAIL
@@ -57,19 +48,16 @@
     expected: FAIL
 
   [Animation between "path('M 20 10 Q 32 42 120 2200')" and "path('M 20 10 Q 40 50 200 3000')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 20 10 Q 32 42 120 2200')" and "path('M 20 10 Q 40 50 200 3000')" at progress 2]
     expected: FAIL
 
-  ["path('m 20 10 q 12 32 100 2190')" and "path('m 20 10 q 20 40 180 2990')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 20 10 q 12 32 100 2190')" and "path('m 20 10 q 20 40 180 2990')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 20 10 q 12 32 100 2190')" and "path('m 20 10 q 20 40 180 2990')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 20 10 q 12 32 100 2190')" and "path('m 20 10 q 20 40 180 2990')" at progress 0.125]
     expected: FAIL
@@ -78,19 +66,16 @@
     expected: FAIL
 
   [Animation between "path('m 20 10 q 12 32 100 2190')" and "path('m 20 10 q 20 40 180 2990')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 20 10 q 12 32 100 2190')" and "path('m 20 10 q 20 40 180 2990')" at progress 2]
     expected: FAIL
 
-  ["path('M 100 400 A 10 20 30 1 0 140 450')" and "path('M 300 200 A 50 60 70 0 1 380 290')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 100 400 A 10 20 30 1 0 140 450')" and "path('M 300 200 A 50 60 70 0 1 380 290')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 100 400 A 10 20 30 1 0 140 450')" and "path('M 300 200 A 50 60 70 0 1 380 290')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 100 400 A 10 20 30 1 0 140 450')" and "path('M 300 200 A 50 60 70 0 1 380 290')" at progress 0.125]
     expected: FAIL
@@ -99,19 +84,16 @@
     expected: FAIL
 
   [Animation between "path('M 100 400 A 10 20 30 1 0 140 450')" and "path('M 300 200 A 50 60 70 0 1 380 290')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 100 400 A 10 20 30 1 0 140 450')" and "path('M 300 200 A 50 60 70 0 1 380 290')" at progress 2]
     expected: FAIL
 
-  ["path('m 100 400 a 10 20 30 1 0 40 50')" and "path('m 300 200 a 50 60 70 0 1 80 90')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 100 400 a 10 20 30 1 0 40 50')" and "path('m 300 200 a 50 60 70 0 1 80 90')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 100 400 a 10 20 30 1 0 40 50')" and "path('m 300 200 a 50 60 70 0 1 80 90')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 100 400 a 10 20 30 1 0 40 50')" and "path('m 300 200 a 50 60 70 0 1 80 90')" at progress 0.125]
     expected: FAIL
--- a/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-003.html.ini
+++ b/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-003.html.ini
@@ -1,12 +1,9 @@
 [offset-path-interpolation-003.html]
-  ["path('M 50 60 H 70')" and "path('M 10 140 H 270')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 50 60 H 70')" and "path('M 10 140 H 270')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 50 60 H 70')" and "path('M 10 140 H 270')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 50 60 H 70')" and "path('M 10 140 H 270')" at progress 0.125]
     expected: FAIL
@@ -15,19 +12,16 @@
     expected: FAIL
 
   [Animation between "path('M 50 60 H 70')" and "path('M 10 140 H 270')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 50 60 H 70')" and "path('M 10 140 H 270')" at progress 2]
     expected: FAIL
 
-  ["path('m 50 60 h 20')" and "path('m 10 140 h 260')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 50 60 h 20')" and "path('m 10 140 h 260')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 50 60 h 20')" and "path('m 10 140 h 260')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 50 60 h 20')" and "path('m 10 140 h 260')" at progress 0.125]
     expected: FAIL
@@ -36,19 +30,16 @@
     expected: FAIL
 
   [Animation between "path('m 50 60 h 20')" and "path('m 10 140 h 260')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 50 60 h 20')" and "path('m 10 140 h 260')" at progress 2]
     expected: FAIL
 
-  ["path('M 50 60 V 70')" and "path('M 10 140 V 270')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 50 60 V 70')" and "path('M 10 140 V 270')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 50 60 V 70')" and "path('M 10 140 V 270')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 50 60 V 70')" and "path('M 10 140 V 270')" at progress 0.125]
     expected: FAIL
@@ -57,19 +48,16 @@
     expected: FAIL
 
   [Animation between "path('M 50 60 V 70')" and "path('M 10 140 V 270')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 50 60 V 70')" and "path('M 10 140 V 270')" at progress 2]
     expected: FAIL
 
-  ["path('m 50 60 v 10')" and "path('m 10 140 v 130')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 50 60 v 10')" and "path('m 10 140 v 130')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 50 60 v 10')" and "path('m 10 140 v 130')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 50 60 v 10')" and "path('m 10 140 v 130')" at progress 0.125]
     expected: FAIL
@@ -78,19 +66,16 @@
     expected: FAIL
 
   [Animation between "path('m 50 60 v 10')" and "path('m 10 140 v 130')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 50 60 v 10')" and "path('m 10 140 v 130')" at progress 2]
     expected: FAIL
 
-  ["path('M 12 34 S 45 67 89 123')" and "path('M 20 26 S 61 51 113 99')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 12 34 S 45 67 89 123')" and "path('M 20 26 S 61 51 113 99')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 12 34 S 45 67 89 123')" and "path('M 20 26 S 61 51 113 99')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 12 34 S 45 67 89 123')" and "path('M 20 26 S 61 51 113 99')" at progress 0.125]
     expected: FAIL
@@ -99,19 +84,16 @@
     expected: FAIL
 
   [Animation between "path('M 12 34 S 45 67 89 123')" and "path('M 20 26 S 61 51 113 99')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 12 34 S 45 67 89 123')" and "path('M 20 26 S 61 51 113 99')" at progress 2]
     expected: FAIL
 
-  ["path('m 12 34 s 33 33 77 89')" and "path('m 20 26 s 41 25 93 73')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 12 34 s 33 33 77 89')" and "path('m 20 26 s 41 25 93 73')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 12 34 s 33 33 77 89')" and "path('m 20 26 s 41 25 93 73')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 12 34 s 33 33 77 89')" and "path('m 20 26 s 41 25 93 73')" at progress 0.125]
     expected: FAIL
@@ -120,19 +102,16 @@
     expected: FAIL
 
   [Animation between "path('m 12 34 s 33 33 77 89')" and "path('m 20 26 s 41 25 93 73')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 12 34 s 33 33 77 89')" and "path('m 20 26 s 41 25 93 73')" at progress 2]
     expected: FAIL
 
-  ["path('M 12 34 T 45 67')" and "path('M 20 26 T 61 51')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 12 34 T 45 67')" and "path('M 20 26 T 61 51')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 12 34 T 45 67')" and "path('M 20 26 T 61 51')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 12 34 T 45 67')" and "path('M 20 26 T 61 51')" at progress 0.125]
     expected: FAIL
@@ -141,19 +120,16 @@
     expected: FAIL
 
   [Animation between "path('M 12 34 T 45 67')" and "path('M 20 26 T 61 51')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 12 34 T 45 67')" and "path('M 20 26 T 61 51')" at progress 2]
     expected: FAIL
 
-  ["path('m 12 34 t 33 33')" and "path('m 20 26 t 41 25')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 12 34 t 33 33')" and "path('m 20 26 t 41 25')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 12 34 t 33 33')" and "path('m 20 26 t 41 25')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 12 34 t 33 33')" and "path('m 20 26 t 41 25')" at progress 0.125]
     expected: FAIL
--- a/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-004.html.ini
+++ b/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-004.html.ini
@@ -1,12 +1,9 @@
 [offset-path-interpolation-004.html]
-  ["path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 300 100 z')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 300 100 z')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 300 100 z')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 300 100 z')" at progress 0.125]
     expected: FAIL
@@ -15,19 +12,16 @@
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 300 100 z')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 300 100 z')" at progress 2]
     expected: FAIL
 
-  ["path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" at progress -1]
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" at progress 0]
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" at progress 0.125]
     expected: FAIL
@@ -36,19 +30,16 @@
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" at progress 1]
     expected: FAIL
 
   [Animation between "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')" and "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" at progress 2]
     expected: FAIL
 
-  ["path('m 10 20 l 40 50 z l 40 60 z m 60 70 l 90 60 z t 70 130')" and "path('M 210 220 L 170 190 Z L 90 120 Z M 110 130 L 200 230 Z T 220 220')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 10 20 l 40 50 z l 40 60 z m 60 70 l 90 60 z t 70 130')" and "path('M 210 220 L 170 190 Z L 90 120 Z M 110 130 L 200 230 Z T 220 220')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 10 20 l 40 50 z l 40 60 z m 60 70 l 90 60 z t 70 130')" and "path('M 210 220 L 170 190 Z L 90 120 Z M 110 130 L 200 230 Z T 220 220')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 10 20 l 40 50 z l 40 60 z m 60 70 l 90 60 z t 70 130')" and "path('M 210 220 L 170 190 Z L 90 120 Z M 110 130 L 200 230 Z T 220 220')" at progress 0.125]
     expected: FAIL
@@ -57,19 +48,16 @@
     expected: FAIL
 
   [Animation between "path('m 10 20 l 40 50 z l 40 60 z m 60 70 l 90 60 z t 70 130')" and "path('M 210 220 L 170 190 Z L 90 120 Z M 110 130 L 200 230 Z T 220 220')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 10 20 l 40 50 z l 40 60 z m 60 70 l 90 60 z t 70 130')" and "path('M 210 220 L 170 190 Z L 90 120 Z M 110 130 L 200 230 Z T 220 220')" at progress 2]
     expected: FAIL
 
-  ["path('m 10 20 c 40 50 30 60 80 70 c 120 130 170 140 110 160')" and "path('M 130 100 C 130 150 120 160 210 170 C 290 300 340 310 320 330')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 10 20 c 40 50 30 60 80 70 c 120 130 170 140 110 160')" and "path('M 130 100 C 130 150 120 160 210 170 C 290 300 340 310 320 330')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 10 20 c 40 50 30 60 80 70 c 120 130 170 140 110 160')" and "path('M 130 100 C 130 150 120 160 210 170 C 290 300 340 310 320 330')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 10 20 c 40 50 30 60 80 70 c 120 130 170 140 110 160')" and "path('M 130 100 C 130 150 120 160 210 170 C 290 300 340 310 320 330')" at progress 0.125]
     expected: FAIL
@@ -78,19 +66,16 @@
     expected: FAIL
 
   [Animation between "path('m 10 20 c 40 50 30 60 80 70 c 120 130 170 140 110 160')" and "path('M 130 100 C 130 150 120 160 210 170 C 290 300 340 310 320 330')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 10 20 c 40 50 30 60 80 70 c 120 130 170 140 110 160')" and "path('M 130 100 C 130 150 120 160 210 170 C 290 300 340 310 320 330')" at progress 2]
     expected: FAIL
 
-  ["path('m 10 20 q 30 60 40 50 q 110 80 90 80')" and "path('M 130 100 Q 120 160 130 150 Q 200 150 180 190')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 10 20 q 30 60 40 50 q 110 80 90 80')" and "path('M 130 100 Q 120 160 130 150 Q 200 150 180 190')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 10 20 q 30 60 40 50 q 110 80 90 80')" and "path('M 130 100 Q 120 160 130 150 Q 200 150 180 190')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 10 20 q 30 60 40 50 q 110 80 90 80')" and "path('M 130 100 Q 120 160 130 150 Q 200 150 180 190')" at progress 0.125]
     expected: FAIL
@@ -99,19 +84,16 @@
     expected: FAIL
 
   [Animation between "path('m 10 20 q 30 60 40 50 q 110 80 90 80')" and "path('M 130 100 Q 120 160 130 150 Q 200 150 180 190')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 10 20 q 30 60 40 50 q 110 80 90 80')" and "path('M 130 100 Q 120 160 130 150 Q 200 150 180 190')" at progress 2]
     expected: FAIL
 
-  ["path('m 10 20 s 30 60 40 50 s 110 60 90 70')" and "path('M 130 140 S 120 160 130 150 S 200 170 140 180')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 10 20 s 30 60 40 50 s 110 60 90 70')" and "path('M 130 140 S 120 160 130 150 S 200 170 140 180')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 10 20 s 30 60 40 50 s 110 60 90 70')" and "path('M 130 140 S 120 160 130 150 S 200 170 140 180')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 10 20 s 30 60 40 50 s 110 60 90 70')" and "path('M 130 140 S 120 160 130 150 S 200 170 140 180')" at progress 0.125]
     expected: FAIL
@@ -120,19 +102,16 @@
     expected: FAIL
 
   [Animation between "path('m 10 20 s 30 60 40 50 s 110 60 90 70')" and "path('M 130 140 S 120 160 130 150 S 200 170 140 180')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 10 20 s 30 60 40 50 s 110 60 90 70')" and "path('M 130 140 S 120 160 130 150 S 200 170 140 180')" at progress 2]
     expected: FAIL
 
-  ["path('m 10 20 h 30 v 60 h 10 v -10 l 110 60')" and "path('M 130 140 H 120 V 160 H 130 V 150 L 200 170')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 10 20 h 30 v 60 h 10 v -10 l 110 60')" and "path('M 130 140 H 120 V 160 H 130 V 150 L 200 170')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 10 20 h 30 v 60 h 10 v -10 l 110 60')" and "path('M 130 140 H 120 V 160 H 130 V 150 L 200 170')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 10 20 h 30 v 60 h 10 v -10 l 110 60')" and "path('M 130 140 H 120 V 160 H 130 V 150 L 200 170')" at progress 0.125]
     expected: FAIL
@@ -141,19 +120,16 @@
     expected: FAIL
 
   [Animation between "path('m 10 20 h 30 v 60 h 10 v -10 l 110 60')" and "path('M 130 140 H 120 V 160 H 130 V 150 L 200 170')" at progress 1]
     expected: FAIL
 
   [Animation between "path('m 10 20 h 30 v 60 h 10 v -10 l 110 60')" and "path('M 130 140 H 120 V 160 H 130 V 150 L 200 170')" at progress 2]
     expected: FAIL
 
-  ["path('m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50')" and "path('M 18 12 A 50 100 70 0 1 90 110 A 150 160 70 0 1 70 80')" are valid offset-path values]
-    expected: FAIL
-
   [Animation between "path('m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50')" and "path('M 18 12 A 50 100 70 0 1 90 110 A 150 160 70 0 1 70 80')" at progress -1]
     expected: FAIL
 
   [Animation between "path('m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50')" and "path('M 18 12 A 50 100 70 0 1 90 110 A 150 160 70 0 1 70 80')" at progress 0]
     expected: FAIL
 
   [Animation between "path('m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50')" and "path('M 18 12 A 50 100 70 0 1 90 110 A 150 160 70 0 1 70 80')" at progress 0.125]
     expected: FAIL
--- a/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-005.html.ini
+++ b/testing/web-platform/meta/css/motion/animation/offset-path-interpolation-005.html.ini
@@ -27,37 +27,19 @@
     expected: FAIL
 
   [Animation between "ray(0deg closest-corner)" and "none" at progress 0]
     expected: FAIL
 
   [Animation between "ray(0deg closest-corner)" and "none" at progress 0.125]
     expected: FAIL
 
-  [Animation between "ray(0deg closest-corner)" and "none" at progress 0.875]
-    expected: FAIL
-
-  [Animation between "ray(0deg closest-corner)" and "none" at progress 1]
-    expected: FAIL
-
-  [Animation between "ray(0deg closest-corner)" and "none" at progress 2]
-    expected: FAIL
-
   ["none" and "ray(20deg closest-side)" are valid offset-path values]
     expected: FAIL
 
-  [Animation between "none" and "ray(20deg closest-side)" at progress -1]
-    expected: FAIL
-
-  [Animation between "none" and "ray(20deg closest-side)" at progress 0]
-    expected: FAIL
-
-  [Animation between "none" and "ray(20deg closest-side)" at progress 0.125]
-    expected: FAIL
-
   [Animation between "none" and "ray(20deg closest-side)" at progress 0.875]
     expected: FAIL
 
   [Animation between "none" and "ray(20deg closest-side)" at progress 1]
     expected: FAIL
 
   [Animation between "none" and "ray(20deg closest-side)" at progress 2]
     expected: FAIL
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/meta/css/motion/offset-path-string-001.html.ini
@@ -0,0 +1,3 @@
+[offset-path-string-001.html]
+  expected: FAIL
+  bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1429299
deleted file mode 100644
--- a/testing/web-platform/meta/css/motion/offset-path-string.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[offset-path-string.html]
-  expected: FAIL
--- a/testing/web-platform/meta/css/motion/parsing/offset-path-parsing-valid.html.ini
+++ b/testing/web-platform/meta/css/motion/parsing/offset-path-parsing-valid.html.ini
@@ -1,21 +1,15 @@
 [offset-path-parsing-valid.html]
   [Serialization should round-trip after setting e.style['offset-path'\] = "ray(calc(180deg - 45deg) farthest-side)"]
     expected: FAIL
 
   [Serialization should round-trip after setting e.style['offset-path'\] = "fill-box ellipse(50% 60%)"]
     expected: FAIL
 
-  [e.style['offset-path'\] = "none" should set the property value]
-    expected: FAIL
-
-  [Serialization should round-trip after setting e.style['offset-path'\] = "none"]
-    expected: FAIL
-
   [e.style['offset-path'\] = "ray(0rad closest-side)" should set the property value]
     expected: FAIL
 
   [Serialization should round-trip after setting e.style['offset-path'\] = "ray(0rad closest-side)"]
     expected: FAIL
 
   [e.style['offset-path'\] = "ray(0.25turn closest-corner contain)" should set the property value]
     expected: FAIL
@@ -39,28 +33,16 @@
     expected: FAIL
 
   [Serialization should round-trip after setting e.style['offset-path'\] = "ray(-720deg sides)"]
     expected: FAIL
 
   [e.style['offset-path'\] = "ray(calc(180deg - 45deg) farthest-side)" should set the property value]
     expected: FAIL
 
-  [e.style['offset-path'\] = "path('m 0 0 h -100')" should set the property value]
-    expected: FAIL
-
-  [Serialization should round-trip after setting e.style['offset-path'\] = "path('m 0 0 h -100')"]
-    expected: FAIL
-
-  [e.style['offset-path'\] = "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 300 300 Z')" should set the property value]
-    expected: FAIL
-
-  [Serialization should round-trip after setting e.style['offset-path'\] = "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 300 300 Z')"]
-    expected: FAIL
-
   [e.style['offset-path'\] = "url(\\"http://www.example.com/index.html#polyline1\\")" should set the property value]
     expected: FAIL
 
   [Serialization should round-trip after setting e.style['offset-path'\] = "url(\\"http://www.example.com/index.html#polyline1\\")"]
     expected: FAIL
 
   [e.style['offset-path'\] = "circle(100px)" should set the property value]
     expected: FAIL
rename from testing/web-platform/tests/css/motion/offset-path-string.html
rename to testing/web-platform/tests/css/motion/offset-path-string-001.html
copy from testing/web-platform/tests/css/motion/offset-path-string.html
copy to testing/web-platform/tests/css/motion/offset-path-string-002.html
--- a/testing/web-platform/tests/css/motion/offset-path-string.html
+++ b/testing/web-platform/tests/css/motion/offset-path-string-002.html
@@ -1,26 +1,24 @@
 <!DOCTYPE html>
 <html>
   <head>
     <title>CSS Motion Path: path(string) paths</title>
-    <link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
     <link rel="help" href="https://drafts.fxtf.org/motion-1/#offset-path-property">
     <link rel="match" href="offset-path-string-ref.html">
     <meta name="assert" content="This tests that path(<string>) generates a rotation and translation.">
     <style>
       #target {
         position: absolute;
         left: 300px;
         top: 0px;
         width: 300px;
         height: 200px;
         background-color: lime;
         transform-origin: 0px 0px;
-        offset-path: path('m 0 0 v 200');
-        offset-distance: 120px;
+        offset-path: path('m 0 120 v 200');
       }
     </style>
   </head>
   <body>
     <div id="target"></div>
   </body>
 </html>
--- a/testing/web-platform/tests/css/motion/parsing/offset-path-parsing-invalid.html
+++ b/testing/web-platform/tests/css/motion/parsing/offset-path-parsing-invalid.html
@@ -9,17 +9,17 @@
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
 <script src="../support/parsing-testcommon.js"></script>
 </head>
 <body>
 <script>
 // arc path segments must have at least 7 arguments.
 // https://www.w3.org/TR/SVG/paths.html#PathDataEllipticalArcCommands
-test_invalid_value("offset-path", "path('M 20 30 A 60 70 80')");
+test_invalid_value("offset-path", 'path("M 20 30 A 60 70 80")');
 
 test_invalid_value("offset-path", "ray(0 sides)");
 test_invalid_value("offset-path", "ray(0deg)");
 test_invalid_value("offset-path", "ray(closest-side)");
 test_invalid_value("offset-path", "ray(closest-side 0deg closest-side)");
 test_invalid_value("offset-path", "ray(0deg closest-side 0deg)");
 test_invalid_value("offset-path", "ray(contain 0deg closest-side contain)");
 
--- a/testing/web-platform/tests/css/motion/parsing/offset-path-parsing-valid.html
+++ b/testing/web-platform/tests/css/motion/parsing/offset-path-parsing-valid.html
@@ -16,18 +16,18 @@ test_valid_value("offset-path", "none");
 
 test_valid_value("offset-path", "ray(0rad closest-side)");
 test_valid_value("offset-path", "ray(0.25turn closest-corner contain)");
 test_valid_value("offset-path", "ray(200grad farthest-side)");
 test_valid_value("offset-path", "ray(270deg farthest-corner contain)");
 test_valid_value("offset-path", "ray(-720deg sides)");
 test_valid_value("offset-path", "ray(calc(180deg - 45deg) farthest-side)", "ray(calc(135deg) farthest-side)");
 
-test_valid_value("offset-path", "path('m 0 0 h -100')");
-test_valid_value("offset-path", "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 300 300 Z')");
+test_valid_value("offset-path", 'path("m 0 0 h -100")');
+test_valid_value("offset-path", 'path("M 0 0 L 100 100 M 100 200 L 200 200 Z L 300 300 Z")');
 
 test_valid_value("offset-path", 'url("http://www.example.com/index.html#polyline1")');
 
 test_valid_value("offset-path", "circle(100px)");
 test_valid_value("offset-path", "margin-box");
 test_valid_value("offset-path", "inset(10% 20% 30% 40%) border-box");
 test_valid_value("offset-path", "fill-box ellipse(50% 60%)", "ellipse(50% 60%) fill-box");
 </script>