Bug 1363246 - Add w-p-t of font stretch's addition/accumulation. r?birtles draft
authorMantaroh Yoshinaga <mantaroh@gmail.com>
Thu, 25 May 2017 10:14:46 +0900
changeset 584214 f432006e95a70d9e8007c3089749758a5b007e43
parent 584051 c575ecde53030c41c12ba228d8fe78c3ed896e76
child 630299 2c6822b58270d72e38c6ad0bb0011fca8a915865
push id60650
push usermantaroh@gmail.com
push dateThu, 25 May 2017 01:17:31 +0000
reviewersbirtles
bugs1363246
milestone55.0a1
Bug 1363246 - Add w-p-t of font stretch's addition/accumulation. r?birtles MozReview-Commit-ID: 8mA2HZkH55f
testing/web-platform/meta/MANIFEST.json
testing/web-platform/meta/web-animations/animation-model/animation-types/accumulation-per-property.html.ini
testing/web-platform/meta/web-animations/animation-model/animation-types/addition-per-property.html.ini
testing/web-platform/mozilla/meta/MANIFEST.json
testing/web-platform/tests/web-animations/animation-model/animation-types/property-types.js
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -145836,17 +145836,17 @@
    "28603b8d225367ba648bb9271dec5cb3da73d733",
    "testharness"
   ],
   "XMLHttpRequest/open-url-redirected-worker-origin.htm": [
    "877d6bd227709cc3ada32493ba6cc86683efade9",
    "testharness"
   ],
   "XMLHttpRequest/open-url-worker-origin.htm": [
-   "f105c0e4b249f82545f2763c4b1a23a3a217e3a7",
+   "1e377fb04baa8c55c2d656b572f285cfe71cbc7c",
    "testharness"
   ],
   "XMLHttpRequest/open-url-worker-simple.htm": [
    "224c1502970253197c670bfb04efa15708e034d5",
    "testharness"
   ],
   "XMLHttpRequest/open-user-password-non-same-origin.htm": [
    "9e28bf35af12bb962fdfd2213d7e20e031a29703",
@@ -175132,17 +175132,17 @@
    "42dc60a28c86ef378a8aa614f411f13bae0a081a",
    "testharness"
   ],
   "fetch/api/headers/headers-normalize.html": [
    "6ccdfba06f9a8692029d72ef81aee16a1996ca01",
    "testharness"
   ],
   "fetch/api/headers/headers-record.html": [
-   "26b2eb6cb1836f6431f16b1e60256919d9427f2b",
+   "84652a79c8ff64826faff6151cf4a48450e706d1",
    "testharness"
   ],
   "fetch/api/headers/headers-structure.html": [
    "226fd13f37c7c45b7ab6d64eb12f0b7e049f3032",
    "testharness"
   ],
   "fetch/api/headers/historical.any.js": [
    "d4c5932358e07e927c5931c304ea37faa7d528ea",
@@ -220000,17 +220000,17 @@
    "55100f7d505bc8cbc966ced0d1337ed78534a553",
    "testharness"
   ],
   "web-animations/animation-model/animation-types/property-list.js": [
    "a6860f4971e06078b5abdd57b3d7f57c0adff51e",
    "support"
   ],
   "web-animations/animation-model/animation-types/property-types.js": [
-   "0c6ae747d483ba276749f9b7760c513eb0d7992c",
+   "1e16ea29f863cdf0bdcc6e9a4d000f4d76a312fb",
    "support"
   ],
   "web-animations/animation-model/animation-types/spacing-keyframes-filters.html": [
    "bd771a8a18245560221d92ea3495f81918c09848",
    "testharness"
   ],
   "web-animations/animation-model/animation-types/spacing-keyframes-shapes.html": [
    "03c3ab6815cfa96c07d5f95b6059fb276c50a25f",
@@ -220180,17 +220180,17 @@
    "e1dfb5c05807a37974ecce98bb8c683cc291bfe4",
    "testharness"
   ],
   "web-animations/interfaces/KeyframeEffect/getComputedTiming.html": [
    "c9dcf7c17010e5495007e000b33aeb4dc89f92b7",
    "testharness"
   ],
   "web-animations/interfaces/KeyframeEffect/iterationComposite.html": [
-   "5b7dbc28de885751ea952f4fecc2bd07cb3cea11",
+   "2ed50cdb27335345015d8b13c64ef86c67048757",
    "testharness"
   ],
   "web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument.html": [
    "6f561694e38420194fd1817ee965436348221d06",
    "testharness"
   ],
   "web-animations/interfaces/KeyframeEffect/setKeyframes.html": [
    "2982bb6f57bb52c6e4e0483e4e47b22868a6010d",
@@ -220216,17 +220216,17 @@
    "5ef1183a4d3e12ad3edfe678c9fa002e7edce888",
    "support"
   ],
   "web-animations/resources/keyframe-utils.js": [
    "ff5700466b5af6ffaad824437d6566003a22e25b",
    "support"
   ],
   "web-animations/testcommon.js": [
-   "26d892976e935d0352ef1ede012435cc67be9f79",
+   "b12f7087f2adec5ce2a2b8e07be2f24d68aa9df2",
    "support"
   ],
   "web-animations/timing-model/animation-effects/active-time.html": [
    "42eb1a23e89ae60ccd0a3664a9a583df1eb30d49",
    "testharness"
   ],
   "web-animations/timing-model/animation-effects/current-iteration.html": [
    "b08a35ae832ce33da7fe7fee22e589a6b85a6353",
--- a/testing/web-platform/meta/web-animations/animation-model/animation-types/accumulation-per-property.html.ini
+++ b/testing/web-platform/meta/web-animations/animation-model/animation-types/accumulation-per-property.html.ini
@@ -1,9 +1,5 @@
 [accumulation-per-property.html]
   type: testharness
   [column-gap: "normal" onto "200px"]
     expected: FAIL
 
-  [font-stretch (type: fontStretch) has testAccumulation function]
-    expected: FAIL
-    bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1363246
-
--- a/testing/web-platform/meta/web-animations/animation-model/animation-types/addition-per-property.html.ini
+++ b/testing/web-platform/meta/web-animations/animation-model/animation-types/addition-per-property.html.ini
@@ -1,11 +1,7 @@
 prefs: [layout.css.contain.enabled:true, layout.css.initial-letter.enabled:true, layout.css.overflow-clip-box.enabled:true, layout.css.shape-outside.enabled:true]
 [addition-per-property.html]
   type: testharness
   [column-gap: "normal" onto "200px"]
     expected: FAIL
     bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1356241
 
-  [font-stretch (type: fontStretch) has testAddition function]
-    expected: FAIL
-    bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1363246
-
--- a/testing/web-platform/mozilla/meta/MANIFEST.json
+++ b/testing/web-platform/mozilla/meta/MANIFEST.json
@@ -1225,17 +1225,17 @@
    "10e609777838bf8466f1a4ac3167dccbe02aa0fa",
    "support"
   ],
   "wasm/js/int_literals.wast.js": [
    "d93434a6db98561d7e9dcada35de9b890d9fddbd",
    "support"
   ],
   "wasm/js/jsapi.js": [
-   "b70cc6443c64d1f8b5094a123bc25e81b97b10f8",
+   "a958c0c051ed15684a7463323d68e2a7871a3b60",
    "support"
   ],
   "wasm/js/labels.wast.js": [
    "f495e844ab669663133a22161bef7092000ecbce",
    "support"
   ],
   "wasm/js/left-to-right.wast.js": [
    "03a280b39ef3a65b3ce714c7637c88760055add1",
--- a/testing/web-platform/tests/web-animations/animation-model/animation-types/property-types.js
+++ b/testing/web-platform/tests/web-animations/animation-model/animation-types/property-types.js
@@ -1610,38 +1610,56 @@ const dasharrayType = {
   },
 }
 
 const fontStretchType = {
   testInterpolation: function(property, setup) {
     test(function(t) {
       var idlName = propertyToIDL(property);
       var target = createTestElement(t, setup);
-      var animation = target.animate({ [idlName]:
-                                         ['ultra-condensed',
-					  'extra-condensed'] },
-                                     { duration: 1000, fill: 'both' });
-	testAnimationSamples(
-          animation, idlName,
-          [{ time: 499,  expected: 'ultra-condensed' },
-           { time: 500,  expected: 'extra-condensed' }]);
+      var animation =
+        target.animate({ [idlName]: ['ultra-condensed', 'extra-condensed'] },
+                       { duration: 1000, fill: 'both' });
+      testAnimationSamples(animation, idlName,
+                           [{ time: 499,  expected: 'ultra-condensed' },
+                            { time: 500,  expected: 'extra-condensed' }]);
     }, property + ' supports animating as a font-stretch (adjacent values)');
 
     test(function(t) {
       var idlName = propertyToIDL(property);
       var target = createTestElement(t, setup);
-      var animation = target.animate({ [idlName]:
-                                         ['ultra-condensed',
-					  'condensed'] },
-                                     { duration: 1000, fill: 'both' });
-	testAnimationSamples(
-          animation, idlName,
-          [{ time: 500,  expected: 'extra-condensed' }]);
+      var animation =
+        target.animate({ [idlName]: ['ultra-condensed', 'condensed'] },
+                       { duration: 1000, fill: 'both' });
+      testAnimationSamples(animation, idlName,
+                           [{ time: 500,  expected: 'extra-condensed' }]);
     }, property + ' supports animating as a font-stretch (between value)');
   },
+
+  testAdditionOrAccumulation: function(property, setup, composite) {
+    test(function(t) {
+      var idlName = propertyToIDL(property);
+      var target = createTestElement(t, setup);
+      target.style[idlName] = 'condensed';
+      var animation =
+        target.animate({ [idlName]: ['expanded', 'ultra-expanded'] },
+                       { duration: 1000, composite: composite });
+      testAnimationSamples(animation, idlName,
+                           [{ time: 0, expected: 'normal' },
+                            { time: 250, expected: 'semi-expanded' }]);
+    }, property + ' uses font-stretch behavior for composite type ' + composite);
+  },
+
+  testAddition: function(property, setup) {
+    this.testAdditionOrAccumulation(property, setup, 'add');
+  },
+
+  testAccumulation: function(property, setup) {
+    this.testAdditionOrAccumulation(property, setup, 'accumulate');
+  },
 }
 
 const types = {
   color: colorType,
   discrete: discreteType,
   filterList: filterListType,
   integer: integerType,
   positiveInteger: positiveIntegerType,