[css-typed-om] Support offset-rotate.
Introduces the <angle> data type.
Test fails because we compute offset-rotate to a pair rather than
'as specified'
had to rebaseline all the tests.
Bug: 820299
Change-Id: Ifdc192550b0b544b9887af80c259b3bfeede556b
Reviewed-on: https://chromium-review.googlesource.com/1003433
Commit-Queue: Darren Shen <shend@chromium.org>
Reviewed-by: nainar <nainar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550146}
diff --git a/css/css-typed-om/the-stylepropertymap/properties/offset-rotate.html b/css/css-typed-om/the-stylepropertymap/properties/offset-rotate.html
index 56a8580..c91e27c 100644
--- a/css/css-typed-om/the-stylepropertymap/properties/offset-rotate.html
+++ b/css/css-typed-om/the-stylepropertymap/properties/offset-rotate.html
@@ -12,6 +12,12 @@
<script>
'use strict';
+runPropertyTests('offset-rotate', [
+ { syntax: 'auto' },
+ { syntax: 'reverse' },
+ { syntax: '<angle>' },
+]);
+
runUnsupportedPropertyTests('offset-rotate', [
'auto 90deg',
'reverse -90deg',
diff --git a/css/css-typed-om/the-stylepropertymap/properties/resources/testsuite.js b/css/css-typed-om/the-stylepropertymap/properties/resources/testsuite.js
index db79630..3ca0b55 100644
--- a/css/css-typed-om/the-stylepropertymap/properties/resources/testsuite.js
+++ b/css/css-typed-om/the-stylepropertymap/properties/resources/testsuite.js
@@ -124,6 +124,60 @@
}
],
},
+ '<time>': {
+ description: 'a time',
+ examples: [
+ {
+ description: "zero seconds",
+ input: new CSSUnitValue(0, 's')
+ },
+ {
+ description: "negative milliseconds",
+ input: new CSSUnitValue(-3.14, 'ms'),
+ // Computed values use canonical units
+ defaultComputed: (_, result) => assert_style_value_equals(result, new CSSUnitValue(-0.00314, 's'))
+ },
+ {
+ description: "positive seconds",
+ input: new CSSUnitValue(3.14, 's')
+ },
+ {
+ description: "a calc time",
+ input: new CSSMathSum(new CSSUnitValue(0, 's'), new CSSUnitValue(0, 'ms')),
+ // Specified/computed calcs are usually simplified.
+ // FIXME: Test this properly
+ defaultSpecified: (_, result) => assert_is_calc_sum(result),
+ defaultComputed: (_, result) => assert_is_unit('s', result)
+ }
+ ],
+ },
+ '<angle>': {
+ description: 'an angle',
+ examples: [
+ {
+ description: "zero degrees",
+ input: new CSSUnitValue(0, 'deg')
+ },
+ {
+ description: "positive radians",
+ input: new CSSUnitValue(3.14, 'rad'),
+ // Computed values use canonical units
+ defaultComputed: (_, result) => assert_style_value_equals(result, new CSSUnitValue(179.908752, 'deg'))
+ },
+ {
+ description: "negative degrees",
+ input: new CSSUnitValue(-3.14, 'deg')
+ },
+ {
+ description: "a calc angle",
+ input: new CSSMathSum(new CSSUnitValue(0, 'rad'), new CSSUnitValue(0, 'deg')),
+ // Specified/computed calcs are usually simplified.
+ // FIXME: Test this properly
+ defaultSpecified: (_, result) => assert_is_calc_sum(result),
+ defaultComputed: (_, result) => assert_is_unit('deg', result)
+ }
+ ],
+ },
'<flex>': {
description: 'a flexible length',
examples: [