Import the css/css-values web platform tests
authorsimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 24 Oct 2019 01:44:56 +0000 (01:44 +0000)
committersimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 24 Oct 2019 01:44:56 +0000 (01:44 +0000)
https://bugs.webkit.org/show_bug.cgi?id=203342

Reviewed by Dean Jackson.
LayoutTests/imported/w3c:

Import wpt revision e68120da0fb52f010f206f3ecc63cfa09885b0f4 (Wed Oct 23 13:18:06 2019 -0700)
css-values tests.

* resources/import-expectations.json:
* resources/resource-files.json:
* web-platform-tests/css/css-values/META.yml: Added.
* web-platform-tests/css/css-values/absolute-length-units-001-expected.txt: Added.
* web-platform-tests/css/css-values/absolute-length-units-001.html: Added.
* web-platform-tests/css/css-values/absolute_length_units-expected.txt: Added.
* web-platform-tests/css/css-values/absolute_length_units.html: Added.
* web-platform-tests/css/css-values/angle-units-001-expected.xht: Added.
* web-platform-tests/css/css-values/angle-units-001.html: Added.
* web-platform-tests/css/css-values/angle-units-002-expected.xht: Added.
* web-platform-tests/css/css-values/angle-units-002.html: Added.
* web-platform-tests/css/css-values/angle-units-003-expected.xht: Added.
* web-platform-tests/css/css-values/angle-units-003.html: Added.
* web-platform-tests/css/css-values/angle-units-004-expected.xht: Added.
* web-platform-tests/css/css-values/angle-units-004.html: Added.
* web-platform-tests/css/css-values/angle-units-005-expected.xht: Added.
* web-platform-tests/css/css-values/angle-units-005.html: Added.
* web-platform-tests/css/css-values/attr-color-invalid-cast-expected.html: Added.
* web-platform-tests/css/css-values/attr-color-invalid-cast.html: Added.
* web-platform-tests/css/css-values/attr-color-invalid-fallback-expected.html: Added.
* web-platform-tests/css/css-values/attr-color-invalid-fallback.html: Added.
* web-platform-tests/css/css-values/attr-color-valid-expected.html: Added.
* web-platform-tests/css/css-values/attr-color-valid.html: Added.
* web-platform-tests/css/css-values/attr-in-max-expected.html: Added.
* web-platform-tests/css/css-values/attr-in-max.html: Added.
* web-platform-tests/css/css-values/attr-invalid-type-001-expected.html: Added.
* web-platform-tests/css/css-values/attr-invalid-type-001.html: Added.
* web-platform-tests/css/css-values/attr-invalid-type-002-expected.html: Added.
* web-platform-tests/css/css-values/attr-invalid-type-002.html: Added.
* web-platform-tests/css/css-values/attr-invalid-type-008-expected.xht: Added.
* web-platform-tests/css/css-values/attr-invalid-type-008.html: Added.
* web-platform-tests/css/css-values/attr-length-invalid-cast-expected.html: Added.
* web-platform-tests/css/css-values/attr-length-invalid-cast.html: Added.
* web-platform-tests/css/css-values/attr-length-invalid-fallback-expected.html: Added.
* web-platform-tests/css/css-values/attr-length-invalid-fallback.html: Added.
* web-platform-tests/css/css-values/attr-length-valid-expected.html: Added.
* web-platform-tests/css/css-values/attr-length-valid-zero-expected.html: Added.
* web-platform-tests/css/css-values/attr-length-valid-zero-nofallback-expected.html: Added.
* web-platform-tests/css/css-values/attr-length-valid-zero-nofallback.html: Added.
* web-platform-tests/css/css-values/attr-length-valid-zero.html: Added.
* web-platform-tests/css/css-values/attr-length-valid.html: Added.
* web-platform-tests/css/css-values/attr-px-invalid-cast-expected.html: Added.
* web-platform-tests/css/css-values/attr-px-invalid-cast.html: Added.
* web-platform-tests/css/css-values/attr-px-invalid-fallback-expected.html: Added.
* web-platform-tests/css/css-values/attr-px-invalid-fallback.html: Added.
* web-platform-tests/css/css-values/attr-px-valid-expected.html: Added.
* web-platform-tests/css/css-values/attr-px-valid.html: Added.
* web-platform-tests/css/css-values/calc-angle-values-expected.txt: Added.
* web-platform-tests/css/css-values/calc-angle-values.html: Added.
* web-platform-tests/css/css-values/calc-background-position-002-expected.txt: Added.
* web-platform-tests/css/css-values/calc-background-position-002.html: Added.
* web-platform-tests/css/css-values/calc-background-position-003-expected.txt: Added.
* web-platform-tests/css/css-values/calc-background-position-003.html: Added.
* web-platform-tests/css/css-values/calc-ch-ex-lang-expected.html: Added.
* web-platform-tests/css/css-values/calc-ch-ex-lang.html: Added.
* web-platform-tests/css/css-values/calc-in-calc-expected.html: Added.
* web-platform-tests/css/css-values/calc-in-calc.html: Added.
* web-platform-tests/css/css-values/calc-in-color-001-expected.txt: Added.
* web-platform-tests/css/css-values/calc-in-color-001.html: Added.
* web-platform-tests/css/css-values/calc-in-counter-001-expected.xhtml: Added.
* web-platform-tests/css/css-values/calc-in-counter-001.xhtml: Added.
* web-platform-tests/css/css-values/calc-in-font-feature-settings-expected.txt: Added.
* web-platform-tests/css/css-values/calc-in-font-feature-settings.html: Added.
* web-platform-tests/css/css-values/calc-in-max-expected.html: Added.
* web-platform-tests/css/css-values/calc-in-max.html: Added.
* web-platform-tests/css/css-values/calc-in-media-queries-001-expected.html: Added.
* web-platform-tests/css/css-values/calc-in-media-queries-001.html: Added.
* web-platform-tests/css/css-values/calc-in-media-queries-002-expected.html: Added.
* web-platform-tests/css/css-values/calc-in-media-queries-002.html: Added.
* web-platform-tests/css/css-values/calc-integer-expected.txt: Added.
* web-platform-tests/css/css-values/calc-integer.html: Added.
* web-platform-tests/css/css-values/calc-invalid-range-clamping-expected.html: Added.
* web-platform-tests/css/css-values/calc-invalid-range-clamping.html: Added.
* web-platform-tests/css/css-values/calc-letter-spacing-expected.txt: Added.
* web-platform-tests/css/css-values/calc-letter-spacing.html: Added.
* web-platform-tests/css/css-values/calc-min-height-expected.xht: Added.
* web-platform-tests/css/css-values/calc-min-height.html: Added.
* web-platform-tests/css/css-values/calc-nesting-002-expected.txt: Added.
* web-platform-tests/css/css-values/calc-nesting-002.html: Added.
* web-platform-tests/css/css-values/calc-nesting-expected.txt: Added.
* web-platform-tests/css/css-values/calc-nesting.html: Added.
* web-platform-tests/css/css-values/calc-parenthesis-stack-expected.html: Added.
* web-platform-tests/css/css-values/calc-parenthesis-stack.html: Added.
* web-platform-tests/css/css-values/calc-positive-fraction-001-expected.xht: Added.
* web-platform-tests/css/css-values/calc-positive-fraction-001.html: Added.
* web-platform-tests/css/css-values/calc-rem-lang-expected.html: Added.
* web-platform-tests/css/css-values/calc-rem-lang.html: Added.
* web-platform-tests/css/css-values/calc-rgb-percent-001-expected.txt: Added.
* web-platform-tests/css/css-values/calc-rgb-percent-001.html: Added.
* web-platform-tests/css/css-values/calc-rounding-001-expected.txt: Added.
* web-platform-tests/css/css-values/calc-rounding-001.html: Added.
* web-platform-tests/css/css-values/calc-serialization-002-expected.txt: Added.
* web-platform-tests/css/css-values/calc-serialization-002.html: Added.
* web-platform-tests/css/css-values/calc-serialization-expected.txt: Added.
* web-platform-tests/css/css-values/calc-serialization.html: Added.
* web-platform-tests/css/css-values/calc-time-values-expected.txt: Added.
* web-platform-tests/css/css-values/calc-time-values.html: Added.
* web-platform-tests/css/css-values/calc-unit-analysis-expected.txt: Added.
* web-platform-tests/css/css-values/calc-unit-analysis.html: Added.
* web-platform-tests/css/css-values/calc-z-index-fractions-001-expected.txt: Added.
* web-platform-tests/css/css-values/calc-z-index-fractions-001.html: Added.
* web-platform-tests/css/css-values/calc-zero-percent-height-expected.html: Added.
* web-platform-tests/css/css-values/calc-zero-percent-height.html: Added.
* web-platform-tests/css/css-values/ch-unit-001-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-001.html: Added.
* web-platform-tests/css/css-values/ch-unit-002-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-002.html: Added.
* web-platform-tests/css/css-values/ch-unit-003-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-003.html: Added.
* web-platform-tests/css/css-values/ch-unit-004-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-004.html: Added.
* web-platform-tests/css/css-values/ch-unit-008-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-008.html: Added.
* web-platform-tests/css/css-values/ch-unit-009-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-009.html: Added.
* web-platform-tests/css/css-values/ch-unit-010-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-010.html: Added.
* web-platform-tests/css/css-values/ch-unit-011-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-011.html: Added.
* web-platform-tests/css/css-values/ch-unit-012-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-012.html: Added.
* web-platform-tests/css/css-values/ch-unit-013-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-013.html: Added.
* web-platform-tests/css/css-values/ch-unit-014-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-014.html: Added.
* web-platform-tests/css/css-values/ch-unit-015-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-015.html: Added.
* web-platform-tests/css/css-values/ch-unit-016-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-016.html: Added.
* web-platform-tests/css/css-values/ch-unit-017-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-017.html: Added.
* web-platform-tests/css/css-values/ch-unit-018-expected.html: Added.
* web-platform-tests/css/css-values/ch-unit-018.html: Added.
* web-platform-tests/css/css-values/clamp-length-computed-expected.txt: Added.
* web-platform-tests/css/css-values/clamp-length-computed.html: Added.
* web-platform-tests/css/css-values/clamp-length-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/clamp-length-invalid.html: Added.
* web-platform-tests/css/css-values/clamp-length-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/clamp-length-serialize.html: Added.
* web-platform-tests/css/css-values/ex-calc-expression-001-expected.html: Added.
* web-platform-tests/css/css-values/ex-calc-expression-001.html: Added.
* web-platform-tests/css/css-values/ex-unit-001-expected.html: Added.
* web-platform-tests/css/css-values/ex-unit-001.html: Added.
* web-platform-tests/css/css-values/ex-unit-002-expected.html: Added.
* web-platform-tests/css/css-values/ex-unit-002.html: Added.
* web-platform-tests/css/css-values/ex-unit-003-expected.html: Added.
* web-platform-tests/css/css-values/ex-unit-003.html: Added.
* web-platform-tests/css/css-values/getComputedStyle-border-radius-001-expected.txt: Added.
* web-platform-tests/css/css-values/getComputedStyle-border-radius-001.html: Added.
* web-platform-tests/css/css-values/getComputedStyle-border-radius-002-expected.txt: Added.
* web-platform-tests/css/css-values/getComputedStyle-border-radius-002.html: Added.
* web-platform-tests/css/css-values/getComputedStyle-border-radius-003-expected.txt: Added.
* web-platform-tests/css/css-values/getComputedStyle-border-radius-003.html: Added.
* web-platform-tests/css/css-values/ic-unit-001-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-001.html: Added.
* web-platform-tests/css/css-values/ic-unit-002-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-002.html: Added.
* web-platform-tests/css/css-values/ic-unit-003-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-003.html: Added.
* web-platform-tests/css/css-values/ic-unit-004-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-004.html: Added.
* web-platform-tests/css/css-values/ic-unit-008-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-008.html: Added.
* web-platform-tests/css/css-values/ic-unit-009-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-009.html: Added.
* web-platform-tests/css/css-values/ic-unit-010-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-010.html: Added.
* web-platform-tests/css/css-values/ic-unit-011-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-011.html: Added.
* web-platform-tests/css/css-values/ic-unit-012-expected.html: Added.
* web-platform-tests/css/css-values/ic-unit-012.html: Added.
* web-platform-tests/css/css-values/initial-background-color-expected.html: Added.
* web-platform-tests/css/css-values/initial-background-color.html: Added.
* web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt: Added.
* web-platform-tests/css/css-values/lh-rlh-on-root-001.html: Added.
* web-platform-tests/css/css-values/lh-unit-001-expected.xht: Added.
* web-platform-tests/css/css-values/lh-unit-001.html: Added.
* web-platform-tests/css/css-values/lh-unit-002-expected.xht: Added.
* web-platform-tests/css/css-values/lh-unit-002.html: Added.
* web-platform-tests/css/css-values/line-break-ch-unit-expected.txt: Added.
* web-platform-tests/css/css-values/line-break-ch-unit.html: Added.
* web-platform-tests/css/css-values/max-20-arguments-expected.html: Added.
* web-platform-tests/css/css-values/max-20-arguments.html: Added.
* web-platform-tests/css/css-values/max-length-percent-001-expected.html: Added.
* web-platform-tests/css/css-values/max-length-percent-001.html: Added.
* web-platform-tests/css/css-values/max-unitless-zero-invalid-expected.html: Added.
* web-platform-tests/css/css-values/max-unitless-zero-invalid.html: Added.
* web-platform-tests/css/css-values/min-length-percent-001-expected.html: Added.
* web-platform-tests/css/css-values/min-length-percent-001.html: Added.
* web-platform-tests/css/css-values/min-max-percentage-length-interpolation-expected.html: Added.
* web-platform-tests/css/css-values/min-max-percentage-length-interpolation.html: Added.
* web-platform-tests/css/css-values/minmax-angle-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-angle-computed.html: Added.
* web-platform-tests/css/css-values/minmax-angle-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-angle-invalid.html: Added.
* web-platform-tests/css/css-values/minmax-angle-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-angle-serialize.html: Added.
* web-platform-tests/css/css-values/minmax-integer-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-integer-computed.html: Added.
* web-platform-tests/css/css-values/minmax-length-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-length-computed.html: Added.
* web-platform-tests/css/css-values/minmax-length-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-length-invalid.html: Added.
* web-platform-tests/css/css-values/minmax-length-percent-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-length-percent-computed.html: Added.
* web-platform-tests/css/css-values/minmax-length-percent-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-length-percent-invalid.html: Added.
* web-platform-tests/css/css-values/minmax-length-percent-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-length-percent-serialize.html: Added.
* web-platform-tests/css/css-values/minmax-length-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-length-serialize.html: Added.
* web-platform-tests/css/css-values/minmax-number-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-number-computed.html: Added.
* web-platform-tests/css/css-values/minmax-number-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-number-invalid.html: Added.
* web-platform-tests/css/css-values/minmax-number-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-number-serialize.html: Added.
* web-platform-tests/css/css-values/minmax-percentage-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-percentage-computed.html: Added.
* web-platform-tests/css/css-values/minmax-percentage-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-percentage-invalid.html: Added.
* web-platform-tests/css/css-values/minmax-percentage-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-percentage-serialize.html: Added.
* web-platform-tests/css/css-values/minmax-time-computed-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-time-computed.html: Added.
* web-platform-tests/css/css-values/minmax-time-invalid-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-time-invalid.html: Added.
* web-platform-tests/css/css-values/minmax-time-serialize-expected.txt: Added.
* web-platform-tests/css/css-values/minmax-time-serialize.html: Added.
* web-platform-tests/css/css-values/percentage-rem-low-expected.html: Added.
* web-platform-tests/css/css-values/percentage-rem-low.html: Added.
* web-platform-tests/css/css-values/q-unit-case-insensitivity-001-expected.xht: Added.
* web-platform-tests/css/css-values/q-unit-case-insensitivity-001.html: Added.
* web-platform-tests/css/css-values/q-unit-case-insensitivity-002-expected.xht: Added.
* web-platform-tests/css/css-values/q-unit-case-insensitivity-002.html: Added.
* web-platform-tests/css/css-values/resources/ChTestNoZero.woff: Added.
* web-platform-tests/css/css-values/resources/ChTestShortZero.woff: Added.
* web-platform-tests/css/css-values/resources/ChTestZeroWidthZero.woff: Added.
* web-platform-tests/css/css-values/resources/ExTest.woff: Added.
* web-platform-tests/css/css-values/resources/w3c-import.log: Added.
* web-platform-tests/css/css-values/rgba-011-expected.txt: Added.
* web-platform-tests/css/css-values/rgba-011.html: Added.
* web-platform-tests/css/css-values/support/1x1-green.png: Added.
* web-platform-tests/css/css-values/support/1x1-lime.png: Added.
* web-platform-tests/css/css-values/support/1x1-maroon.png: Added.
* web-platform-tests/css/css-values/support/1x1-navy.png: Added.
* web-platform-tests/css/css-values/support/1x1-red.png: Added.
* web-platform-tests/css/css-values/support/1x1-white.png: Added.
* web-platform-tests/css/css-values/support/60x60-gg-rr.png: Added.
* web-platform-tests/css/css-values/support/60x60-green.png: Added.
* web-platform-tests/css/css-values/support/60x60-red.png: Added.
* web-platform-tests/css/css-values/support/README: Added.
* web-platform-tests/css/css-values/support/a-green.css: Added.
(.a):
* web-platform-tests/css/css-values/support/b-green.css: Added.
(.b):
* web-platform-tests/css/css-values/support/c-red.css: Added.
(.c):
* web-platform-tests/css/css-values/support/cat.png: Added.
* web-platform-tests/css/css-values/support/import-green.css: Added.
(.import):
* web-platform-tests/css/css-values/support/import-red.css: Added.
(.import):
* web-platform-tests/css/css-values/support/pattern-grg-rgr-grg.png: Added.
* web-platform-tests/css/css-values/support/pattern-grg-rrg-rgg.png: Added.
* web-platform-tests/css/css-values/support/pattern-rgr-grg-rgr.png: Added.
* web-platform-tests/css/css-values/support/pattern-tr.png: Added.
* web-platform-tests/css/css-values/support/ruler-h-50%.png: Added.
* web-platform-tests/css/css-values/support/ruler-h-50px.png: Added.
* web-platform-tests/css/css-values/support/ruler-v-100px.png: Added.
* web-platform-tests/css/css-values/support/ruler-v-50px.png: Added.
* web-platform-tests/css/css-values/support/square-purple.png: Added.
* web-platform-tests/css/css-values/support/square-teal.png: Added.
* web-platform-tests/css/css-values/support/square-white.png: Added.
* web-platform-tests/css/css-values/support/support/README: Added.
* web-platform-tests/css/css-values/support/support/swatch-green.png: Added.
* web-platform-tests/css/css-values/support/support/swatch-red.png: Added.
* web-platform-tests/css/css-values/support/support/w3c-import.log: Added.
* web-platform-tests/css/css-values/support/swatch-blue.png: Added.
* web-platform-tests/css/css-values/support/swatch-green.png: Added.
* web-platform-tests/css/css-values/support/swatch-lime.png: Added.
* web-platform-tests/css/css-values/support/swatch-orange.png: Added.
* web-platform-tests/css/css-values/support/swatch-red.png: Added.
* web-platform-tests/css/css-values/support/swatch-teal.png: Added.
* web-platform-tests/css/css-values/support/swatch-white.png: Added.
* web-platform-tests/css/css-values/support/swatch-yellow.png: Added.
* web-platform-tests/css/css-values/support/test-bl.png: Added.
* web-platform-tests/css/css-values/support/test-br.png: Added.
* web-platform-tests/css/css-values/support/test-inner-half-size.png: Added.
* web-platform-tests/css/css-values/support/test-outer.png: Added.
* web-platform-tests/css/css-values/support/test-tl.png: Added.
* web-platform-tests/css/css-values/support/test-tr.png: Added.
* web-platform-tests/css/css-values/support/vh-support-transform-origin-iframe.html: Added.
* web-platform-tests/css/css-values/support/vh-support-transform-translate-iframe.html: Added.
* web-platform-tests/css/css-values/support/vh_not_refreshing_on_chrome_iframe.html: Added.
* web-platform-tests/css/css-values/support/w3c-import.log: Added.
* web-platform-tests/css/css-values/unset-value-storage-expected.txt: Added.
* web-platform-tests/css/css-values/unset-value-storage.html: Added.
* web-platform-tests/css/css-values/urls/empty-expected.txt: Added.
* web-platform-tests/css/css-values/urls/empty.html: Added.
* web-platform-tests/css/css-values/urls/support/empty-urls.css: Added.
(#external-unquoted):
(#external-quoted):
* web-platform-tests/css/css-values/urls/support/w3c-import.log: Added.
* web-platform-tests/css/css-values/urls/w3c-import.log: Added.
* web-platform-tests/css/css-values/vh-calc-support-expected.html: Added.
* web-platform-tests/css/css-values/vh-calc-support-pct-expected.html: Added.
* web-platform-tests/css/css-values/vh-calc-support-pct.html: Added.
* web-platform-tests/css/css-values/vh-calc-support.html: Added.
* web-platform-tests/css/css-values/vh-em-inherit-expected.html: Added.
* web-platform-tests/css/css-values/vh-em-inherit.html: Added.
* web-platform-tests/css/css-values/vh-inherit-expected.html: Added.
* web-platform-tests/css/css-values/vh-inherit.html: Added.
* web-platform-tests/css/css-values/vh-interpolate-pct-expected.html: Added.
* web-platform-tests/css/css-values/vh-interpolate-pct.html: Added.
* web-platform-tests/css/css-values/vh-interpolate-px-expected.html: Added.
* web-platform-tests/css/css-values/vh-interpolate-px.html: Added.
* web-platform-tests/css/css-values/vh-interpolate-vh-expected.html: Added.
* web-platform-tests/css/css-values/vh-interpolate-vh.html: Added.
* web-platform-tests/css/css-values/vh-support-atviewport-expected.htm: Added.
* web-platform-tests/css/css-values/vh-support-atviewport.html: Added.
* web-platform-tests/css/css-values/vh-support-expected.html: Added.
* web-platform-tests/css/css-values/vh-support-margin-expected.html: Added.
* web-platform-tests/css/css-values/vh-support-margin.html: Added.
* web-platform-tests/css/css-values/vh-support-transform-origin-expected.html: Added.
* web-platform-tests/css/css-values/vh-support-transform-origin.html: Added.
* web-platform-tests/css/css-values/vh-support-transform-translate-expected.html: Added.
* web-platform-tests/css/css-values/vh-support-transform-translate.html: Added.
* web-platform-tests/css/css-values/vh-support.html: Added.
* web-platform-tests/css/css-values/vh-zero-support-expected.html: Added.
* web-platform-tests/css/css-values/vh-zero-support.html: Added.
* web-platform-tests/css/css-values/vh_not_refreshing_on_chrome-expected.html: Added.
* web-platform-tests/css/css-values/vh_not_refreshing_on_chrome.html: Added.
* web-platform-tests/css/css-values/viewport-relative-lengths-scaled-viewport-expected.txt: Added.
* web-platform-tests/css/css-values/viewport-relative-lengths-scaled-viewport.html: Added.
* web-platform-tests/css/css-values/viewport-unit-011-expected.html: Added.
* web-platform-tests/css/css-values/viewport-unit-011.html: Added.
* web-platform-tests/css/css-values/viewport-units-css2-001-expected.txt: Added.
* web-platform-tests/css/css-values/viewport-units-css2-001.html: Added.
* web-platform-tests/css/css-values/w3c-import.log: Added.

LayoutTests:

Import wpt revision e68120da0fb52f010f206f3ecc63cfa09885b0f4 (Wed Oct 23 13:18:06 2019 -0700)
css-values tests.

* TestExpectations:
* platform/ios/imported/w3c/web-platform-tests/css/css-values/absolute_length_units-expected.txt: Added.
* platform/ios/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt: Added.
* platform/ios/imported/w3c/web-platform-tests/css/css-values/minmax-length-computed-expected.txt: Added.
* platform/ios/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-computed-expected.txt: Added.
* tests-options.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@251521 268f45cc-cd09-0410-ab3c-d52691b4dbfc

341 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/resources/import-expectations.json
LayoutTests/imported/w3c/resources/resource-files.json
LayoutTests/imported/w3c/web-platform-tests/css/css-values/META.yml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute-length-units-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute-length-units-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute_length_units-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute_length_units.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-001-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-002-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-003-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-004-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-005-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-005.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-fallback-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-fallback.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-valid-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-in-max-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-in-max.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-fallback-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-fallback.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-fallback-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-fallback.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-valid-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-003-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-ch-ex-lang-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-ch-ex-lang.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-calc-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-calc.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-color-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-color-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-counter-001-expected.xhtml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-counter-001.xhtml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-font-feature-settings-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-font-feature-settings.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-max-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-max.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-integer-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-integer.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-invalid-range-clamping-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-invalid-range-clamping.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-letter-spacing-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-letter-spacing.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-min-height-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-min-height.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-parenthesis-stack-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-parenthesis-stack.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rem-lang-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rem-lang.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rgb-percent-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rgb-percent-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rounding-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rounding-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-time-values-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-time-values.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-unit-analysis-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-unit-analysis.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-z-index-fractions-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-z-index-fractions-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-zero-percent-height-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-zero-percent-height.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-004-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-008-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-008.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-009-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-009.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-010-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-010.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-011-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-011.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-012-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-012.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-013-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-013.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-014-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-014.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-015-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-015.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-016-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-016.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-017-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-017.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-018-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-018.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-calc-expression-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-calc-expression-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-003-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-004-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-008-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-008.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-009-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-009.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-010-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-010.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-011-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-011.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-012-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/ic-unit-012.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/initial-background-color-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/initial-background-color.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-unit-001-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-unit-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-unit-002-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-unit-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/line-break-ch-unit-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/line-break-ch-unit.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/max-20-arguments-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/max-20-arguments.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/max-length-percent-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/max-length-percent-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/max-unitless-zero-invalid-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/max-unitless-zero-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/min-length-percent-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/min-length-percent-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/min-max-percentage-length-interpolation-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/min-max-percentage-length-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-integer-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-integer-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-serialize-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-serialize.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/percentage-rem-low-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/percentage-rem-low.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/q-unit-case-insensitivity-001-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/q-unit-case-insensitivity-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/q-unit-case-insensitivity-002-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/q-unit-case-insensitivity-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/resources/ChTestNoZero.woff [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/resources/ChTestShortZero.woff [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/resources/ChTestZeroWidthZero.woff [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/resources/ExTest.woff [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/resources/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/rgba-011-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/rgba-011.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/1x1-green.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/1x1-lime.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/1x1-maroon.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/1x1-navy.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/1x1-red.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/1x1-white.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/60x60-gg-rr.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/60x60-green.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/60x60-red.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/README [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/a-green.css [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/b-green.css [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/c-red.css [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/cat.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/import-green.css [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/import-red.css [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/pattern-grg-rgr-grg.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/pattern-grg-rrg-rgg.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/pattern-rgr-grg-rgr.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/pattern-tr.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/ruler-h-50%.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/ruler-h-50px.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/ruler-v-100px.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/ruler-v-50px.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/square-purple.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/square-teal.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/square-white.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/support/README [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/support/swatch-green.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/support/swatch-red.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/support/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-blue.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-green.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-lime.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-orange.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-red.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-teal.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-white.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/swatch-yellow.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/test-bl.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/test-br.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/test-inner-half-size.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/test-outer.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/test-tl.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/test-tr.png [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/vh-support-transform-origin-iframe.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/vh-support-transform-translate-iframe.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/vh_not_refreshing_on_chrome_iframe.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/support/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/unset-value-storage-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/unset-value-storage.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/empty-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/empty.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/support/empty-urls.css [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/support/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-calc-support-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-calc-support-pct-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-calc-support-pct.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-calc-support.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-em-inherit-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-em-inherit.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-inherit-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-inherit.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-interpolate-pct-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-interpolate-pct.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-interpolate-px-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-interpolate-px.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-interpolate-vh-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-interpolate-vh.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-atviewport-expected.htm [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-atviewport.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-margin-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-margin.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-transform-origin-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-transform-origin.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-transform-translate-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support-transform-translate.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-support.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-zero-support-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh-zero-support.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh_not_refreshing_on_chrome-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/vh_not_refreshing_on_chrome.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/viewport-relative-lengths-scaled-viewport-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/viewport-relative-lengths-scaled-viewport.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/viewport-unit-011-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/viewport-unit-011.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/viewport-units-css2-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/viewport-units-css2-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-values/w3c-import.log [new file with mode: 0644]
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-values/absolute_length_units-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-values/minmax-length-computed-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-computed-expected.txt [new file with mode: 0644]
LayoutTests/tests-options.json

index 9a398b7..016ffa1 100644 (file)
@@ -1,3 +1,20 @@
+2019-10-23  Simon Fraser  <simon.fraser@apple.com>
+
+        Import the css/css-values web platform tests
+        https://bugs.webkit.org/show_bug.cgi?id=203342
+
+        Reviewed by Dean Jackson.
+
+        Import wpt revision e68120da0fb52f010f206f3ecc63cfa09885b0f4 (Wed Oct 23 13:18:06 2019 -0700)
+        css-values tests.
+
+        * TestExpectations:
+        * platform/ios/imported/w3c/web-platform-tests/css/css-values/absolute_length_units-expected.txt: Added.
+        * platform/ios/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt: Added.
+        * platform/ios/imported/w3c/web-platform-tests/css/css-values/minmax-length-computed-expected.txt: Added.
+        * platform/ios/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-computed-expected.txt: Added.
+        * tests-options.json:
+
 2019-10-23  Russell Epstein  <repstein@apple.com>
 
         Unreviewed, rolling out r251469.
index 1615012..def8825 100644 (file)
@@ -3884,3 +3884,42 @@ webkit.org/b/200207 imported/w3c/web-platform-tests/css/css-images/css-image-fal
 webkit.org/b/200207 imported/w3c/web-platform-tests/css/css-images/css-image-fallbacks-and-annotations.html [ ImageOnlyFailure ]
 webkit.org/b/200208 imported/w3c/web-platform-tests/css/css-images/gradients-with-transparent.html [ ImageOnlyFailure ]
 webkit.org/b/200209 imported/w3c/web-platform-tests/css/css-images/multiple-position-color-stop-radial.html [ ImageOnlyFailure ]
+
+# wpt css-values failures
+webkit.org/b/203320 imported/w3c/web-platform-tests/css/css-values/percentage-rem-low.html [ ImageOnlyFailure ]
+webkit.org/b/203321 imported/w3c/web-platform-tests/css/css-values/q-unit-case-insensitivity-001.html [ ImageOnlyFailure ]
+webkit.org/b/203321 imported/w3c/web-platform-tests/css/css-values/q-unit-case-insensitivity-002.html [ ImageOnlyFailure ]
+webkit.org/b/203322 imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast.html [ ImageOnlyFailure ]
+webkit.org/b/203323 imported/w3c/web-platform-tests/css/css-values/attr-color-valid.html [ ImageOnlyFailure ]
+webkit.org/b/203324 imported/w3c/web-platform-tests/css/css-values/attr-in-max.html [ ImageOnlyFailure ]
+webkit.org/b/203325 imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008.html [ ImageOnlyFailure ]
+webkit.org/b/203326 imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast.html [ ImageOnlyFailure ]
+webkit.org/b/203327 imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback.html [ ImageOnlyFailure ]
+webkit.org/b/203328 imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero.html [ ImageOnlyFailure ]
+webkit.org/b/203329 imported/w3c/web-platform-tests/css/css-values/attr-length-valid.html [ ImageOnlyFailure ]
+webkit.org/b/203330 imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast.html [ ImageOnlyFailure ]
+webkit.org/b/203331 imported/w3c/web-platform-tests/css/css-values/attr-px-valid.html [ ImageOnlyFailure ]
+webkit.org/b/203332 imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-002.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-003.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-004.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-010.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-011.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-012.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-013.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-014.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-015.html [ ImageOnlyFailure ]
+webkit.org/b/203333 imported/w3c/web-platform-tests/css/css-values/ch-unit-018.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-001.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-002.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-003.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-004.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-008.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-009.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-010.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-011.html [ ImageOnlyFailure ]
+webkit.org/b/203334 imported/w3c/web-platform-tests/css/css-values/ic-unit-012.html [ ImageOnlyFailure ]
+webkit.org/b/203336 imported/w3c/web-platform-tests/css/css-values/lh-unit-001.html [ ImageOnlyFailure ]
+webkit.org/b/203336 imported/w3c/web-platform-tests/css/css-values/lh-unit-002.html [ ImageOnlyFailure ]
+webkit.org/b/203337 imported/w3c/web-platform-tests/css/css-values/vh-support-atviewport.html [ ImageOnlyFailure ]
+webkit.org/b/203338 imported/w3c/web-platform-tests/css/css-values/vh_not_refreshing_on_chrome.html [ ImageOnlyFailure ]
index 8e7a0a2..92eec16 100644 (file)
@@ -1,3 +1,354 @@
+2019-10-23  Simon Fraser  <simon.fraser@apple.com>
+
+        Import the css/css-values web platform tests
+        https://bugs.webkit.org/show_bug.cgi?id=203342
+
+        Reviewed by Dean Jackson.
+        
+        Import wpt revision e68120da0fb52f010f206f3ecc63cfa09885b0f4 (Wed Oct 23 13:18:06 2019 -0700)
+        css-values tests.
+
+        * resources/import-expectations.json:
+        * resources/resource-files.json:
+        * web-platform-tests/css/css-values/META.yml: Added.
+        * web-platform-tests/css/css-values/absolute-length-units-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/absolute-length-units-001.html: Added.
+        * web-platform-tests/css/css-values/absolute_length_units-expected.txt: Added.
+        * web-platform-tests/css/css-values/absolute_length_units.html: Added.
+        * web-platform-tests/css/css-values/angle-units-001-expected.xht: Added.
+        * web-platform-tests/css/css-values/angle-units-001.html: Added.
+        * web-platform-tests/css/css-values/angle-units-002-expected.xht: Added.
+        * web-platform-tests/css/css-values/angle-units-002.html: Added.
+        * web-platform-tests/css/css-values/angle-units-003-expected.xht: Added.
+        * web-platform-tests/css/css-values/angle-units-003.html: Added.
+        * web-platform-tests/css/css-values/angle-units-004-expected.xht: Added.
+        * web-platform-tests/css/css-values/angle-units-004.html: Added.
+        * web-platform-tests/css/css-values/angle-units-005-expected.xht: Added.
+        * web-platform-tests/css/css-values/angle-units-005.html: Added.
+        * web-platform-tests/css/css-values/attr-color-invalid-cast-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-color-invalid-cast.html: Added.
+        * web-platform-tests/css/css-values/attr-color-invalid-fallback-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-color-invalid-fallback.html: Added.
+        * web-platform-tests/css/css-values/attr-color-valid-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-color-valid.html: Added.
+        * web-platform-tests/css/css-values/attr-in-max-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-in-max.html: Added.
+        * web-platform-tests/css/css-values/attr-invalid-type-001-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-invalid-type-001.html: Added.
+        * web-platform-tests/css/css-values/attr-invalid-type-002-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-invalid-type-002.html: Added.
+        * web-platform-tests/css/css-values/attr-invalid-type-008-expected.xht: Added.
+        * web-platform-tests/css/css-values/attr-invalid-type-008.html: Added.
+        * web-platform-tests/css/css-values/attr-length-invalid-cast-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-length-invalid-cast.html: Added.
+        * web-platform-tests/css/css-values/attr-length-invalid-fallback-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-length-invalid-fallback.html: Added.
+        * web-platform-tests/css/css-values/attr-length-valid-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-length-valid-zero-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-length-valid-zero-nofallback-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-length-valid-zero-nofallback.html: Added.
+        * web-platform-tests/css/css-values/attr-length-valid-zero.html: Added.
+        * web-platform-tests/css/css-values/attr-length-valid.html: Added.
+        * web-platform-tests/css/css-values/attr-px-invalid-cast-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-px-invalid-cast.html: Added.
+        * web-platform-tests/css/css-values/attr-px-invalid-fallback-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-px-invalid-fallback.html: Added.
+        * web-platform-tests/css/css-values/attr-px-valid-expected.html: Added.
+        * web-platform-tests/css/css-values/attr-px-valid.html: Added.
+        * web-platform-tests/css/css-values/calc-angle-values-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-angle-values.html: Added.
+        * web-platform-tests/css/css-values/calc-background-position-002-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-background-position-002.html: Added.
+        * web-platform-tests/css/css-values/calc-background-position-003-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-background-position-003.html: Added.
+        * web-platform-tests/css/css-values/calc-ch-ex-lang-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-ch-ex-lang.html: Added.
+        * web-platform-tests/css/css-values/calc-in-calc-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-in-calc.html: Added.
+        * web-platform-tests/css/css-values/calc-in-color-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-in-color-001.html: Added.
+        * web-platform-tests/css/css-values/calc-in-counter-001-expected.xhtml: Added.
+        * web-platform-tests/css/css-values/calc-in-counter-001.xhtml: Added.
+        * web-platform-tests/css/css-values/calc-in-font-feature-settings-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-in-font-feature-settings.html: Added.
+        * web-platform-tests/css/css-values/calc-in-max-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-in-max.html: Added.
+        * web-platform-tests/css/css-values/calc-in-media-queries-001-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-in-media-queries-001.html: Added.
+        * web-platform-tests/css/css-values/calc-in-media-queries-002-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-in-media-queries-002.html: Added.
+        * web-platform-tests/css/css-values/calc-integer-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-integer.html: Added.
+        * web-platform-tests/css/css-values/calc-invalid-range-clamping-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-invalid-range-clamping.html: Added.
+        * web-platform-tests/css/css-values/calc-letter-spacing-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-letter-spacing.html: Added.
+        * web-platform-tests/css/css-values/calc-min-height-expected.xht: Added.
+        * web-platform-tests/css/css-values/calc-min-height.html: Added.
+        * web-platform-tests/css/css-values/calc-nesting-002-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-nesting-002.html: Added.
+        * web-platform-tests/css/css-values/calc-nesting-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-nesting.html: Added.
+        * web-platform-tests/css/css-values/calc-parenthesis-stack-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-parenthesis-stack.html: Added.
+        * web-platform-tests/css/css-values/calc-positive-fraction-001-expected.xht: Added.
+        * web-platform-tests/css/css-values/calc-positive-fraction-001.html: Added.
+        * web-platform-tests/css/css-values/calc-rem-lang-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-rem-lang.html: Added.
+        * web-platform-tests/css/css-values/calc-rgb-percent-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-rgb-percent-001.html: Added.
+        * web-platform-tests/css/css-values/calc-rounding-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-rounding-001.html: Added.
+        * web-platform-tests/css/css-values/calc-serialization-002-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-serialization-002.html: Added.
+        * web-platform-tests/css/css-values/calc-serialization-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-serialization.html: Added.
+        * web-platform-tests/css/css-values/calc-time-values-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-time-values.html: Added.
+        * web-platform-tests/css/css-values/calc-unit-analysis-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-unit-analysis.html: Added.
+        * web-platform-tests/css/css-values/calc-z-index-fractions-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/calc-z-index-fractions-001.html: Added.
+        * web-platform-tests/css/css-values/calc-zero-percent-height-expected.html: Added.
+        * web-platform-tests/css/css-values/calc-zero-percent-height.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-001-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-001.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-002-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-002.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-003-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-003.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-004-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-004.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-008-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-008.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-009-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-009.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-010-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-010.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-011-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-011.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-012-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-012.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-013-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-013.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-014-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-014.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-015-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-015.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-016-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-016.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-017-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-017.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-018-expected.html: Added.
+        * web-platform-tests/css/css-values/ch-unit-018.html: Added.
+        * web-platform-tests/css/css-values/clamp-length-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/clamp-length-computed.html: Added.
+        * web-platform-tests/css/css-values/clamp-length-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/clamp-length-invalid.html: Added.
+        * web-platform-tests/css/css-values/clamp-length-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/clamp-length-serialize.html: Added.
+        * web-platform-tests/css/css-values/ex-calc-expression-001-expected.html: Added.
+        * web-platform-tests/css/css-values/ex-calc-expression-001.html: Added.
+        * web-platform-tests/css/css-values/ex-unit-001-expected.html: Added.
+        * web-platform-tests/css/css-values/ex-unit-001.html: Added.
+        * web-platform-tests/css/css-values/ex-unit-002-expected.html: Added.
+        * web-platform-tests/css/css-values/ex-unit-002.html: Added.
+        * web-platform-tests/css/css-values/ex-unit-003-expected.html: Added.
+        * web-platform-tests/css/css-values/ex-unit-003.html: Added.
+        * web-platform-tests/css/css-values/getComputedStyle-border-radius-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/getComputedStyle-border-radius-001.html: Added.
+        * web-platform-tests/css/css-values/getComputedStyle-border-radius-002-expected.txt: Added.
+        * web-platform-tests/css/css-values/getComputedStyle-border-radius-002.html: Added.
+        * web-platform-tests/css/css-values/getComputedStyle-border-radius-003-expected.txt: Added.
+        * web-platform-tests/css/css-values/getComputedStyle-border-radius-003.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-001-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-001.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-002-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-002.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-003-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-003.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-004-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-004.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-008-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-008.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-009-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-009.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-010-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-010.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-011-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-011.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-012-expected.html: Added.
+        * web-platform-tests/css/css-values/ic-unit-012.html: Added.
+        * web-platform-tests/css/css-values/initial-background-color-expected.html: Added.
+        * web-platform-tests/css/css-values/initial-background-color.html: Added.
+        * web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/lh-rlh-on-root-001.html: Added.
+        * web-platform-tests/css/css-values/lh-unit-001-expected.xht: Added.
+        * web-platform-tests/css/css-values/lh-unit-001.html: Added.
+        * web-platform-tests/css/css-values/lh-unit-002-expected.xht: Added.
+        * web-platform-tests/css/css-values/lh-unit-002.html: Added.
+        * web-platform-tests/css/css-values/line-break-ch-unit-expected.txt: Added.
+        * web-platform-tests/css/css-values/line-break-ch-unit.html: Added.
+        * web-platform-tests/css/css-values/max-20-arguments-expected.html: Added.
+        * web-platform-tests/css/css-values/max-20-arguments.html: Added.
+        * web-platform-tests/css/css-values/max-length-percent-001-expected.html: Added.
+        * web-platform-tests/css/css-values/max-length-percent-001.html: Added.
+        * web-platform-tests/css/css-values/max-unitless-zero-invalid-expected.html: Added.
+        * web-platform-tests/css/css-values/max-unitless-zero-invalid.html: Added.
+        * web-platform-tests/css/css-values/min-length-percent-001-expected.html: Added.
+        * web-platform-tests/css/css-values/min-length-percent-001.html: Added.
+        * web-platform-tests/css/css-values/min-max-percentage-length-interpolation-expected.html: Added.
+        * web-platform-tests/css/css-values/min-max-percentage-length-interpolation.html: Added.
+        * web-platform-tests/css/css-values/minmax-angle-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-angle-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-angle-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-angle-invalid.html: Added.
+        * web-platform-tests/css/css-values/minmax-angle-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-angle-serialize.html: Added.
+        * web-platform-tests/css/css-values/minmax-integer-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-integer-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-length-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-length-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-length-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-length-invalid.html: Added.
+        * web-platform-tests/css/css-values/minmax-length-percent-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-length-percent-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-length-percent-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-length-percent-invalid.html: Added.
+        * web-platform-tests/css/css-values/minmax-length-percent-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-length-percent-serialize.html: Added.
+        * web-platform-tests/css/css-values/minmax-length-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-length-serialize.html: Added.
+        * web-platform-tests/css/css-values/minmax-number-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-number-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-number-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-number-invalid.html: Added.
+        * web-platform-tests/css/css-values/minmax-number-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-number-serialize.html: Added.
+        * web-platform-tests/css/css-values/minmax-percentage-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-percentage-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-percentage-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-percentage-invalid.html: Added.
+        * web-platform-tests/css/css-values/minmax-percentage-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-percentage-serialize.html: Added.
+        * web-platform-tests/css/css-values/minmax-time-computed-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-time-computed.html: Added.
+        * web-platform-tests/css/css-values/minmax-time-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-time-invalid.html: Added.
+        * web-platform-tests/css/css-values/minmax-time-serialize-expected.txt: Added.
+        * web-platform-tests/css/css-values/minmax-time-serialize.html: Added.
+        * web-platform-tests/css/css-values/percentage-rem-low-expected.html: Added.
+        * web-platform-tests/css/css-values/percentage-rem-low.html: Added.
+        * web-platform-tests/css/css-values/q-unit-case-insensitivity-001-expected.xht: Added.
+        * web-platform-tests/css/css-values/q-unit-case-insensitivity-001.html: Added.
+        * web-platform-tests/css/css-values/q-unit-case-insensitivity-002-expected.xht: Added.
+        * web-platform-tests/css/css-values/q-unit-case-insensitivity-002.html: Added.
+        * web-platform-tests/css/css-values/resources/ChTestNoZero.woff: Added.
+        * web-platform-tests/css/css-values/resources/ChTestShortZero.woff: Added.
+        * web-platform-tests/css/css-values/resources/ChTestZeroWidthZero.woff: Added.
+        * web-platform-tests/css/css-values/resources/ExTest.woff: Added.
+        * web-platform-tests/css/css-values/resources/w3c-import.log: Added.
+        * web-platform-tests/css/css-values/rgba-011-expected.txt: Added.
+        * web-platform-tests/css/css-values/rgba-011.html: Added.
+        * web-platform-tests/css/css-values/support/1x1-green.png: Added.
+        * web-platform-tests/css/css-values/support/1x1-lime.png: Added.
+        * web-platform-tests/css/css-values/support/1x1-maroon.png: Added.
+        * web-platform-tests/css/css-values/support/1x1-navy.png: Added.
+        * web-platform-tests/css/css-values/support/1x1-red.png: Added.
+        * web-platform-tests/css/css-values/support/1x1-white.png: Added.
+        * web-platform-tests/css/css-values/support/60x60-gg-rr.png: Added.
+        * web-platform-tests/css/css-values/support/60x60-green.png: Added.
+        * web-platform-tests/css/css-values/support/60x60-red.png: Added.
+        * web-platform-tests/css/css-values/support/README: Added.
+        * web-platform-tests/css/css-values/support/a-green.css: Added.
+        (.a):
+        * web-platform-tests/css/css-values/support/b-green.css: Added.
+        (.b):
+        * web-platform-tests/css/css-values/support/c-red.css: Added.
+        (.c):
+        * web-platform-tests/css/css-values/support/cat.png: Added.
+        * web-platform-tests/css/css-values/support/import-green.css: Added.
+        (.import):
+        * web-platform-tests/css/css-values/support/import-red.css: Added.
+        (.import):
+        * web-platform-tests/css/css-values/support/pattern-grg-rgr-grg.png: Added.
+        * web-platform-tests/css/css-values/support/pattern-grg-rrg-rgg.png: Added.
+        * web-platform-tests/css/css-values/support/pattern-rgr-grg-rgr.png: Added.
+        * web-platform-tests/css/css-values/support/pattern-tr.png: Added.
+        * web-platform-tests/css/css-values/support/ruler-h-50%.png: Added.
+        * web-platform-tests/css/css-values/support/ruler-h-50px.png: Added.
+        * web-platform-tests/css/css-values/support/ruler-v-100px.png: Added.
+        * web-platform-tests/css/css-values/support/ruler-v-50px.png: Added.
+        * web-platform-tests/css/css-values/support/square-purple.png: Added.
+        * web-platform-tests/css/css-values/support/square-teal.png: Added.
+        * web-platform-tests/css/css-values/support/square-white.png: Added.
+        * web-platform-tests/css/css-values/support/support/README: Added.
+        * web-platform-tests/css/css-values/support/support/swatch-green.png: Added.
+        * web-platform-tests/css/css-values/support/support/swatch-red.png: Added.
+        * web-platform-tests/css/css-values/support/support/w3c-import.log: Added.
+        * web-platform-tests/css/css-values/support/swatch-blue.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-green.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-lime.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-orange.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-red.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-teal.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-white.png: Added.
+        * web-platform-tests/css/css-values/support/swatch-yellow.png: Added.
+        * web-platform-tests/css/css-values/support/test-bl.png: Added.
+        * web-platform-tests/css/css-values/support/test-br.png: Added.
+        * web-platform-tests/css/css-values/support/test-inner-half-size.png: Added.
+        * web-platform-tests/css/css-values/support/test-outer.png: Added.
+        * web-platform-tests/css/css-values/support/test-tl.png: Added.
+        * web-platform-tests/css/css-values/support/test-tr.png: Added.
+        * web-platform-tests/css/css-values/support/vh-support-transform-origin-iframe.html: Added.
+        * web-platform-tests/css/css-values/support/vh-support-transform-translate-iframe.html: Added.
+        * web-platform-tests/css/css-values/support/vh_not_refreshing_on_chrome_iframe.html: Added.
+        * web-platform-tests/css/css-values/support/w3c-import.log: Added.
+        * web-platform-tests/css/css-values/unset-value-storage-expected.txt: Added.
+        * web-platform-tests/css/css-values/unset-value-storage.html: Added.
+        * web-platform-tests/css/css-values/urls/empty-expected.txt: Added.
+        * web-platform-tests/css/css-values/urls/empty.html: Added.
+        * web-platform-tests/css/css-values/urls/support/empty-urls.css: Added.
+        (#external-unquoted):
+        (#external-quoted):
+        * web-platform-tests/css/css-values/urls/support/w3c-import.log: Added.
+        * web-platform-tests/css/css-values/urls/w3c-import.log: Added.
+        * web-platform-tests/css/css-values/vh-calc-support-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-calc-support-pct-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-calc-support-pct.html: Added.
+        * web-platform-tests/css/css-values/vh-calc-support.html: Added.
+        * web-platform-tests/css/css-values/vh-em-inherit-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-em-inherit.html: Added.
+        * web-platform-tests/css/css-values/vh-inherit-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-inherit.html: Added.
+        * web-platform-tests/css/css-values/vh-interpolate-pct-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-interpolate-pct.html: Added.
+        * web-platform-tests/css/css-values/vh-interpolate-px-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-interpolate-px.html: Added.
+        * web-platform-tests/css/css-values/vh-interpolate-vh-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-interpolate-vh.html: Added.
+        * web-platform-tests/css/css-values/vh-support-atviewport-expected.htm: Added.
+        * web-platform-tests/css/css-values/vh-support-atviewport.html: Added.
+        * web-platform-tests/css/css-values/vh-support-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-support-margin-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-support-margin.html: Added.
+        * web-platform-tests/css/css-values/vh-support-transform-origin-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-support-transform-origin.html: Added.
+        * web-platform-tests/css/css-values/vh-support-transform-translate-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-support-transform-translate.html: Added.
+        * web-platform-tests/css/css-values/vh-support.html: Added.
+        * web-platform-tests/css/css-values/vh-zero-support-expected.html: Added.
+        * web-platform-tests/css/css-values/vh-zero-support.html: Added.
+        * web-platform-tests/css/css-values/vh_not_refreshing_on_chrome-expected.html: Added.
+        * web-platform-tests/css/css-values/vh_not_refreshing_on_chrome.html: Added.
+        * web-platform-tests/css/css-values/viewport-relative-lengths-scaled-viewport-expected.txt: Added.
+        * web-platform-tests/css/css-values/viewport-relative-lengths-scaled-viewport.html: Added.
+        * web-platform-tests/css/css-values/viewport-unit-011-expected.html: Added.
+        * web-platform-tests/css/css-values/viewport-unit-011.html: Added.
+        * web-platform-tests/css/css-values/viewport-units-css2-001-expected.txt: Added.
+        * web-platform-tests/css/css-values/viewport-units-css2-001.html: Added.
+        * web-platform-tests/css/css-values/w3c-import.log: Added.
+
 2019-10-23  Chris Dumez  <cdumez@apple.com>
 
         Ignore document.open/write after the active parser has been aborted
index 2f1af87..6d5bf00 100644 (file)
@@ -1,5 +1,6 @@
 {
     "apng": "import", 
+    "css/css-values": "import", 
     "css/geometry": "import", 
     "custom-elements": "import", 
     "shadow-dom": "import", 
index fa79af2..3761437 100644 (file)
         "web-platform-tests/tools"
     ],
     "files": [
+        "css/css-values/absolute_length_units.html",
+        "css/css-values/support/vh-support-transform-origin-iframe.html",
+        "css/css-values/support/vh-support-transform-translate-iframe.html",
+        "css/css-values/support/vh_not_refreshing_on_chrome_iframe.html",
         "csswg-test/WOFF2-UserAgent/Tests/xhtml1/available-001.xht",
         "csswg-test/WOFF2-UserAgent/Tests/xhtml1/support/available-001a.xht",
         "csswg-test/WOFF2-UserAgent/Tests/xhtml1/support/available-001b.xht",
         "web-platform-tests/xhr/xmlhttprequest-sync-block-defer-scripts-subframe.html",
         "web-platform-tests/xhr/xmlhttprequest-sync-not-hang-scriptloader-subframe.html"
     ]
-}
+}
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/META.yml b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/META.yml
new file mode 100644 (file)
index 0000000..a22882a
--- /dev/null
@@ -0,0 +1,8 @@
+spec: https://drafts.csswg.org/css-values/
+suggested_reviewers:
+  - frivoal
+  - dbaron
+  - FremyCompany
+  - plinss
+  - tabatkins
+  - fantasai
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute-length-units-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute-length-units-001-expected.txt
new file mode 100644 (file)
index 0000000..8689817
--- /dev/null
@@ -0,0 +1,3 @@
+
+FAIL all width and height should be same assert_equals: expected "0px" but got "96px"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute-length-units-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute-length-units-001.html
new file mode 100644 (file)
index 0000000..ae20834
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>absolute length units test</title>
+<meta name="author" title="Hwanseung Lee" href="mailto:hs1217.lee@samsung.com">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#absolute-lengths"/>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+    #t1 { width: 96px; height: 2.54cm; }
+    #t2 { width: 2.54cm; height: 25.4mm; }
+    #t3 { width: 25.4mm; height: 101.6q; }
+    #t4 { width: 101.6q; height: 1in; }
+    #t5 { width: 1in; height: 6pc; }
+    #t6 { width: 6pc; height: 72pt; }
+    #t7 { width: 72pt; height: 96px; }
+</style>
+</head>
+<body>
+    <div id="t1"> </div>
+    <div id="t2"> </div>
+    <div id="t3"> </div>
+    <div id="t4"> </div>
+    <div id="t5"> </div>
+    <div id="t6"> </div>
+    <div id="t7"> </div>
+
+    <script type="text/javascript">
+
+    var test_items = ["t1", "t2", "t3", "t4", "t5", "t6", "t7"]
+
+    function getPropertyValue(id, property) {
+        var elem = document.getElementById(id);
+        return window.getComputedStyle(elem, null).getPropertyValue(property);
+    }
+
+    test(function(){
+        for (var i = 0; i < test_items.length; i++) {
+            assert_equals(getPropertyValue(test_items[i], "width"), getPropertyValue(test_items[i], "height"));
+        }
+    }, "all width and height should be same");
+    </script>
+</body>
+</html>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute_length_units-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute_length_units-expected.txt
new file mode 100644 (file)
index 0000000..2f30917
--- /dev/null
@@ -0,0 +1,38 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x501
+  RenderBlock {HTML} at (0,0) size 800x502
+    RenderBody {BODY} at (8,10) size 784x484
+      RenderBlock {P} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 415x18
+          text run at (0,0) width 415: "There should be a 1mm (width) by 1mm (height) fuchsia square:"
+      RenderBlock {DIV} at (0,28) size 4x4 [bgcolor=#FF00FF]
+      RenderBlock {P} at (0,41) size 784x19
+        RenderText {#text} at (0,0) size 416x18
+          text run at (0,0) width 416: "There should be a 10mm (width) by 1mm (height) fuchsia stripe:"
+      RenderBlock (floating) {DIV} at (0,69) size 4x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (3,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (7,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (11,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (15,69) size 4x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (18,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (22,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (26,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (30,69) size 4x5 [bgcolor=#FF00FF]
+      RenderBlock (floating) {DIV} at (33,69) size 5x5 [bgcolor=#FF00FF]
+      RenderBlock {P} at (0,73) size 784x19
+        RenderText {#text} at (0,0) size 416x18
+          text run at (0,0) width 416: "There should be a 10mm (width) by 10mm (height) olive square:"
+      RenderBlock {DIV} at (0,101) size 38x39 [bgcolor=#808000]
+      RenderBlock {P} at (0,149) size 784x19
+        RenderText {#text} at (0,0) size 550x18
+          text run at (0,0) width 550: "There should be a 1cm (width) by 1cm (height) orange square. So, same width above:"
+      RenderBlock {DIV} at (0,177) size 38x39 [bgcolor=#FFA500]
+      RenderBlock {P} at (0,225) size 784x19
+        RenderText {#text} at (0,0) size 426x18
+          text run at (0,0) width 426: "There should be a 2.54cm (width) by 2.54cm (height) gray square:"
+      RenderBlock {DIV} at (0,253) size 96x97 [bgcolor=#808080]
+      RenderBlock {P} at (0,359) size 784x19
+        RenderText {#text} at (0,0) size 537x18
+          text run at (0,0) width 537: "There should be a 1in (width) by 1in (height) blue square. So, same width as above:"
+      RenderBlock {DIV} at (0,387) size 96x97 [bgcolor=#0000FF]
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute_length_units.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/absolute_length_units.html
new file mode 100644 (file)
index 0000000..7528bbb
--- /dev/null
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html>
+<!-- Submitted from TestTWF Paris -->
+<head>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: elements should be the real world size given in mm, cm, inches...</title>
+  <link rel="author" title="Marc Bourlon" href="mailto:marc@bourlon.com">
+  <link rel="help" href="https://www.w3.org/TR/css3-values/#absolute-lengths" title="5.2 Absolute lengths: the cm, mm, Q, in, pt, pc, px units">
+
+  <style type="text/css">
+
+    .s1mm { background-color: fuchsia; width: 1mm; height: 1mm; }
+    .s10mm { background-color: olive; width: 10mm; height: 10mm; }
+    .s1cm { background-color: orange; width: 1cm; height: 1cm; }
+    .s254cm { background-color: gray; width: 2.54cm; height: 2.54cm; }
+    .s1in { background-color: blue; width: 1in; height: 1in; }
+
+    .inline { float: left; }
+
+    .newline { clear: left; }
+
+    p { clear: both; margin: 10px 0; }
+
+  </style>
+
+</head>
+<body>
+
+<p>
+  There should be a 1mm (width) by 1mm (height) fuchsia square:
+</p>
+
+<div class="s1mm"></div>
+
+<p>
+  There should be a 10mm (width) by 1mm (height) fuchsia stripe:
+</p>
+
+<div class="s1mm newline inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+<div class="s1mm inline"></div>
+
+<p>
+  There should be a 10mm (width) by 10mm (height) olive square:
+</p>
+
+<div class="s10mm newline "></div>
+
+<p>
+  There should be a 1cm (width) by 1cm (height) orange square. So, same width above:
+</p>
+
+<div class="s1cm newline "></div>
+
+<p>
+  There should be a 2.54cm (width) by 2.54cm (height) gray square:
+</p>
+
+<div class="s254cm newline "></div>
+
+<p>
+  There should be a 1in (width) by 1in (height) blue square. So, same width as above:
+</p>
+
+<div class="s1in"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-001-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-001-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-001.html
new file mode 100644 (file)
index 0000000..61ca931
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: invalid angle units</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#angles">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta name="flags" content="invalid">
+
+  <style>
+  div
+    {
+      height: 100px;
+      width: 100px;
+    }
+
+  div#test-overlapping-green
+    {
+      background-image: linear-gradient(green, green);
+      background-image: linear-gradient(90degree, red, red);   /* invalid; 90deg is valid */
+      background-image: linear-gradient(100gradian, red, red); /* invalid; 100grad is valid */
+      background-image: linear-gradient(1.57radian, red, red); /* invalid; 1.57rad is valid */
+      background-image: linear-gradient(0.25turns, red, red);  /* invalid; 0.25turn is valid */
+    }
+
+  div#reference-overlapped-red
+    {
+      background-color: red;
+      bottom: 100px;
+      position: relative;
+      z-index: -1;
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="test-overlapping-green"></div>
+
+  <div id="reference-overlapped-red"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-002-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-002-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-002.html
new file mode 100644 (file)
index 0000000..ff9cdca
--- /dev/null
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: degree angle unit with mixed case</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#angles">
+  <link rel="help" href="https://www.w3.org/TR/CSS22/syndata.html#characters">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta content="This test checks that 'deg' angle unit is case-insensitive." name="assert">
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      height: 100px;
+      width: 100px;
+    }
+
+  div#test-overlapping-green
+    {
+      background-color: red;
+      background-image: linear-gradient(90DeG, green, green);
+    }
+
+  div#reference-overlapped-red
+    {
+      background-color: red;
+      bottom: 100px;
+      position: relative;
+      z-index: -1;
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="test-overlapping-green"></div>
+
+  <div id="reference-overlapped-red"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-003-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-003-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-003.html
new file mode 100644 (file)
index 0000000..786d5fa
--- /dev/null
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: grad angle unit with mixed case</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#angles">
+  <link rel="help" href="https://www.w3.org/TR/CSS22/syndata.html#characters">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta content="This test checks that 'grad' angle unit is case-insensitive." name="assert">
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      height: 100px;
+      width: 100px;
+    }
+
+  div#test-overlapping-green
+    {
+      background-color: red;
+      background-image: linear-gradient(100gRaD, green, green);
+    }
+
+  div#reference-overlapped-red
+    {
+      background-color: red;
+      bottom: 100px;
+      position: relative;
+      z-index: -1;
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="test-overlapping-green"></div>
+
+  <div id="reference-overlapped-red"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-004-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-004-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-004.html
new file mode 100644 (file)
index 0000000..34722a3
--- /dev/null
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: rad angle unit with mixed case</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#angles">
+  <link rel="help" href="https://www.w3.org/TR/CSS22/syndata.html#characters">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta content="This test checks that 'rad' angle unit is case-insensitive." name="assert">
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      height: 100px;
+      width: 100px;
+    }
+
+  div#test-overlapping-green
+    {
+      background-color: red;
+      background-image: linear-gradient(1.57rAd, green, green);
+    }
+
+  div#reference-overlapped-red
+    {
+      background-color: red;
+      bottom: 100px;
+      position: relative;
+      z-index: -1;
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="test-overlapping-green"></div>
+
+  <div id="reference-overlapped-red"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-005-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-005-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-005.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/angle-units-005.html
new file mode 100644 (file)
index 0000000..625952a
--- /dev/null
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: turn angle unit with mixed case</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#angles">
+  <link rel="help" href="https://www.w3.org/TR/CSS22/syndata.html#characters">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta content="This test checks that 'turn' angle unit is case-insensitive." name="assert">
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      height: 100px;
+      width: 100px;
+    }
+
+  div#test-overlapping-green
+    {
+      background-color: red;
+      background-image: linear-gradient(0.25tUrN, green, green);
+    }
+
+  div#reference-overlapped-red
+    {
+      background-color: red;
+      bottom: 100px;
+      position: relative;
+      z-index: -1;
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="test-overlapping-green"></div>
+
+  <div id="reference-overlapped-red"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-cast.html
new file mode 100644 (file)
index 0000000..d538eeb
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (colors)
+       </title>
+       <meta name="assert" content="
+               Invalid color values in referenced attributes are replaced by the fallback value
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: red; width: 200px; height: 200px; }
+
+                       #outer { background: attr(data-test color, green); }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="qqffuutt"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-fallback-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-fallback-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-fallback.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-invalid-fallback.html
new file mode 100644 (file)
index 0000000..9e016d1
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (colors)
+       </title>
+       <meta name="assert" content="
+               When the fallback value of an attr() function is invalid, the delcaration is ignored.
+       " />
+       <meta name="flags" content="invalid">
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; width: 200px; height: 200px; }
+
+                       #outer { background: attr(data-test color, qqffuutt); }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="red"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-valid-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-valid-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-color-valid.html
new file mode 100644 (file)
index 0000000..8817e6b
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (colors)
+       </title>
+       <meta name="assert" content="
+               The value of the reference attribute is used correctly in the layout when it's a color.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: red; width: 200px; height: 200px; }
+
+                       #outer { background: attr(data-test color); }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="green"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-in-max-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-in-max-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-in-max.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-in-max.html
new file mode 100644 (file)
index 0000000..314ed63
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>CSS Values and Units Test: attr() in max()</title>
+
+       <meta name="assert" content="The attr() function notation is allowed inside a max() notation.">
+       <link rel="author" title="Fuqiao Xue" href="mailto:xfq@w3.org">
+       <link rel="help" href="https://drafts.csswg.org/css-values/#attr-notation">
+       <link rel="help" href="https://drafts.csswg.org/css-values/#calc-notation">
+       <link rel="match" href="reference/200-200-green.html">
+
+       <style>
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: max(attr(data-test length)); height: 200px; }
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="200px"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-001-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-001.html
new file mode 100644 (file)
index 0000000..1f88c37
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (types)
+       </title>
+       <meta name="assert" content="
+               When the type of an attr() function is known and unexpected, the declaration is ignored
+       " />
+       <meta name="flags" content="invalid">
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; width: attr(data-test color); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="green"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-002-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-002.html
new file mode 100644 (file)
index 0000000..dbdac8a
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (types)
+       </title>
+       <meta name="assert" content="
+               When the type of an attr() function is known and unexpected, the declaration is ignored
+       " />
+       <meta name="flags" content="invalid">
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; width: attr(data-test number); height: 200px; }
+                       /* NOTE: while '0' is a valid length AND a valid number, the number type isn't a valid representation of a length. */
+                       /* The reason for this is that most numbers aren't valid length */
+                       /* ! Spec need some updates to make those assumptions clearly valid (see Tab Atkins for details) */
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="0"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-invalid-type-008.html
new file mode 100644 (file)
index 0000000..a76be44
--- /dev/null
@@ -0,0 +1,90 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: attr() function with valid and invalid data types</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link href="http://www.w3.org/TR/css3-values/#attr-notation" rel="help">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta name="flags" content="invalid">
+  <meta content="When the data type of an attr() function is invalid or when the fallback value does not match the data type, then the attr() function generates an invalid declaration." name="assert">
+
+  <style>
+  div
+    {
+      height: 50px;
+      position: relative;
+      width: 50px;
+    }
+
+  div#valid1
+    {
+      background-color: green;
+      width: attr(attr-test-valid1 length);
+    }
+
+  div#invalid1
+    {
+      background-color: green;
+      width: 100px;
+      width: attr(attr-test-invalid1 number, 0);
+    }
+
+    /*
+    '0' can be both a number and a length. But here,
+    in this sub-test, the width CSS property requires
+    a length type and not a number type. So, the
+    attr() function generates an invalid declaration.
+    */
+
+  div#reference-overlapped-red
+    {
+      background-color: red;
+      bottom: 100px;
+      height: 100px;
+      width: 100px;
+      z-index: -1;
+    }
+
+  div#invalid2
+    {
+      background-color: red;
+      bottom: 100px;
+      width: 0px;
+      width: attr(attr-test-invalid2 length, 100);
+    }
+
+    /*
+    '100' is not a valid length value.
+    So, the attr() function generates an invalid
+    declaration.
+    */
+
+  div#invalid3
+    {
+      background-color: red;
+      bottom: 100px;
+      width: 0px;
+      width: attr(attr-test-invalid3 number, 100px);
+    }
+
+    /*
+    number type is not a valid length value.
+    So, the attr() function generates an invalid
+    declaration.
+    */
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="valid1" attr-test-valid1="100px"></div>
+
+  <div id="invalid1" attr-test-invalid1="foo"></div>
+
+  <div id="reference-overlapped-red"></div>
+
+  <div id="invalid2" attr-test-invalid2="bar"></div>
+
+  <div id="invalid3" attr-test-invalid3="baz"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-cast.html
new file mode 100644 (file)
index 0000000..9308323
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (length)
+       </title>
+       <meta name="assert" content="
+               When the value of referenced attribute isn't a valid length, the fallback value is unsed instead.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: attr(data-test length, 200px); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="qqffuutt"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-fallback-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-fallback-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-fallback.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-invalid-fallback.html
new file mode 100644 (file)
index 0000000..e68fe7a
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (length)
+       </title>
+       <meta name="assert" content="
+               When the attr() fallback is an invalid length, the delcaration is correctly ignored.
+       " />
+       <meta name="flags" content="invalid">
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; width: attr(data-test length, invalid); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="300px"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero-nofallback.html
new file mode 100644 (file)
index 0000000..b8a042f
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (length)
+       </title>
+       <meta name="assert" content="
+               The value of referenced attribute is used correctly as a length (even if it's 0).
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+                       #outer2 { background: red; }
+
+                       #outer { width: 200px; height: 200px; }
+                       #outer2 { width: 200px; width: attr(data-test length); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+       <div id="outer2" data-test="0"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid-zero.html
new file mode 100644 (file)
index 0000000..fcdebc6
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (length)
+       </title>
+       <meta name="assert" content="
+               The value of referenced attribute is used correctly as a length (even if it's 0).
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+                       #outer2 { background: red; }
+
+                       #outer { width: 200px; height: 200px; }
+                       #outer2 { width: 200px; width: attr(data-test length, 0); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+       <div id="outer2" data-test="0"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-length-valid.html
new file mode 100644 (file)
index 0000000..c78258f
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (length)
+       </title>
+       <meta name="assert" content="
+               The value of referenced attribute is used correctly as a length.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: attr(data-test length); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="200px"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-cast.html
new file mode 100644 (file)
index 0000000..93b2d21
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attributes references (pixels)
+       </title>
+       <meta name="assert" content="
+               When the value of the referenced attribute is not a pixel value, the fallback value is used instead.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: attr(data-test px, 200); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="300px"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-fallback-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-fallback-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-fallback.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-invalid-fallback.html
new file mode 100644 (file)
index 0000000..f8f88f5
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (pixels)
+       </title>
+       <meta name="assert" content="
+               When the fallback of a pixel attribute reference is invalid, the declaration is ignored.
+       " />
+       <meta name="flags" content="invalid">
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; width: attr(data-test px, 300px); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="300"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-valid-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-valid-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/attr-px-valid.html
new file mode 100644 (file)
index 0000000..ec96924
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Attribute references (pixels)
+       </title>
+       <meta name="assert" content="
+               Attribute references for pixel values are replaced correctly at computed time.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: attr(data-test px); height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer" data-test="200"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values-expected.txt
new file mode 100644 (file)
index 0000000..8aedf7b
--- /dev/null
@@ -0,0 +1,29 @@
+
+PASS addition of 2 angle units: deg plus deg 
+PASS addition of 2 angle units: deg plus rad 
+PASS addition of 2 angle units: deg plus grad 
+PASS addition of 2 angle units: deg plus turn 
+PASS addition of 2 angle units: rad plus rad 
+PASS addition of 2 angle units: rad plus grad 
+PASS addition of 2 angle units: rad plus turn 
+PASS addition of 2 angle units: grad plus grad 
+PASS addition of 2 angle units: grad plus turn 
+PASS substraction of angle unit: deg minus deg 
+PASS substraction of angle unit: deg minus rad 
+PASS substraction of angle unit: deg minus grad 
+PASS substraction of angle unit: deg minus turn 
+PASS substraction of angle unit: rad minus rad 
+PASS substraction of angle unit: rad minus grad 
+PASS substraction of angle unit: rad minus turn 
+PASS substraction of angle unit: grad minus grad 
+PASS substraction of angle unit: grad minus turn 
+PASS multiplication of angle unit: deg multiplied by int 
+PASS multiplication of angle unit: int multiplied by rad 
+PASS multiplication of angle unit: grad multiplied by int 
+PASS multiplication of angle unit: int multiplied by turn 
+PASS division of angle unit: deg divided by int 
+PASS division of angle unit: rad divided by int 
+PASS division of angle unit: grad divided by int 
+PASS division of angle unit: turn divided by int 
+PASS conversion of angle unit: grad into deg 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values.html
new file mode 100644 (file)
index 0000000..e41beaf
--- /dev/null
@@ -0,0 +1,295 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: calc() function with angle values</title>
+
+  <!--
+
+  Original test is:
+
+  https://chromium.googlesource.com/chromium/src/+/c825d655f6aaf73484f9d56e9012793f5b9668cc/third_party/WebKit/LayoutTests/css3/calc/calc-with-time-angle-and-frequency-values.html
+
+  Issue 917718: [css-values] calc-with-time-angle-and-frequency-values
+  test is highly unreliable, transition-delay testing causes side effects
+  https://bugs.chromium.org/p/chromium/issues/detail?id=917718
+
+  -->
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#calc-computed-value">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#angles">
+
+  <meta content="This test checks that additions, substractions, multiplications and divisions in calc() function when applied to angle units." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="log"></div>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+    var targetElement = document.getElementById("target");
+
+    function compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.setProperty(property_name, "initial");
+
+      /*
+      Since we are running many consecutive tests on the same
+      element, then it is necessary to reset its property
+      to an initial value before actually re-testing it.
+      */
+
+      targetElement.style.setProperty(property_name, calcValue);
+
+      var computedCalcValue = getComputedStyle(targetElement)[property_name];
+
+      /*
+      We first strip out the word "matrix" with the
+      opening parenthesis "(" and the closing
+      parenthesis ")"
+      */
+
+      computedCalcValue = computedCalcValue.replace("matrix(", "").replace(")", "");
+
+      /*
+      Then, we split the string at each comma ","
+      and store the resulting 6 sub-strings into
+      tableSplitComputedCalcValue
+      */
+
+      var tableSplitCalcValue = computedCalcValue.split(",");
+
+      /*
+      We convert the 6 sub-strings into numerical floating values
+      so that mathematical operations (substraction, absolute value,
+      comparison) can be performed.
+      */
+
+      tableSplitCalcValue[0] = parseFloat(tableSplitCalcValue[0]);
+      tableSplitCalcValue[1] = parseFloat(tableSplitCalcValue[1]);
+      tableSplitCalcValue[2] = parseFloat(tableSplitCalcValue[2]);
+      tableSplitCalcValue[3] = parseFloat(tableSplitCalcValue[3]);
+      tableSplitCalcValue[4] = parseFloat(tableSplitCalcValue[4]);
+      tableSplitCalcValue[5] = parseFloat(tableSplitCalcValue[5]);
+
+      /*
+      Now, we execute the same steps with the expectedValue
+      */
+
+      targetElement.style.setProperty(property_name, expectedValue);
+
+      var computedExpectedValue = getComputedStyle(targetElement)[property_name];
+
+      /*
+      We first strip out the word "matrix" with the
+      opening parenthesis "(" and the closing
+      parenthesis ")"
+      */
+
+      computedExpectedValue = computedExpectedValue.replace("matrix(", "").replace(")", "");
+
+      /*
+      Then, we split the string at each comma ","
+      and store the resulting 6 sub-strings into
+      tableSplitComputedCalcValue
+      */
+
+      var tableSplitExpectedValue = computedExpectedValue.split(",");
+
+      /*
+      We convert the 6 sub-strings into numerical floating values
+      so that mathematical operations (substraction, absolute value,
+      comparison) can be performed.
+      */
+
+      tableSplitExpectedValue[0] = parseFloat(tableSplitExpectedValue[0]);
+      tableSplitExpectedValue[1] = parseFloat(tableSplitExpectedValue[1]);
+      tableSplitExpectedValue[2] = parseFloat(tableSplitExpectedValue[2]);
+      tableSplitExpectedValue[3] = parseFloat(tableSplitExpectedValue[3]);
+      tableSplitExpectedValue[4] = parseFloat(tableSplitExpectedValue[4]);
+      tableSplitExpectedValue[5] = parseFloat(tableSplitExpectedValue[5]);
+
+      assert_array_approx_equals(tableSplitCalcValue, tableSplitExpectedValue, epsilon);
+
+      /*
+      In this mega-test of 27 sub-tests, we intentionally
+      set the tolerance precision (epsilon) to a rather big
+      value (0.0001 === 100 millionths). The reason for this
+      is we want to verify if browsers and CSS-capable
+      applications do the right calculations. We do not want
+      to penalize browsers and CSS-capable applications that
+      have modest precision (not capable of a 1 millionth
+      level precision).
+     */
+
+    } , description);
+
+  }
+
+    /*
+
+    deg
+       Degrees. There are 360 degrees in a full circle.
+
+    grad
+       Gradians, also known as "gons" or "grades". There are 400 gradians in a full circle.
+
+    rad
+       Radians. There are 2π radians in a full circle.
+
+    1rad == 57.295779513°
+    https://www.rapidtables.com/convert/number/radians-to-degrees.html
+
+    π == Math.PI == 3.141592653589793
+
+    turn
+       Turns. There is 1 turn in a full circle.
+
+   */
+
+
+   /* Addition of angle units */
+
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+    compareValueCloseTo("transform", "rotate(calc(45deg + 45deg))", 0.0001, "rotate(90deg)", "addition of 2 angle units: deg plus deg");
+
+    compareValueCloseTo("transform", "rotate(calc(45deg + 1rad))", 0.0001, "rotate(102.29578deg)", "addition of 2 angle units: deg plus rad");
+    /*
+    1 radian == 57.295779513 degrees
+    The original test was using the slightly imprecise rotate(102.3deg)
+    */
+
+    compareValueCloseTo("transform", "rotate(calc(20deg + 200grad))", 0.0001, "rotate(200deg)", "addition of 2 angle units: deg plus grad");
+
+    compareValueCloseTo("transform", "rotate(calc(200deg + 0.5turn))", 0.0001, "rotate(380deg)", "addition of 2 angle units: deg plus turn");
+
+    compareValueCloseTo("transform", "rotate(calc(45rad + 45rad))", 0.0001, "rotate(90rad)", "addition of 2 angle units: rad plus rad");
+
+    compareValueCloseTo("transform", "rotate(calc(1rad + 40grad))", 0.0001, "rotate(93.29578deg)", "addition of 2 angle units: rad plus grad");
+
+    /*
+    1 radian == 57.295779513 degrees; 40 gradians is 36 degrees.
+    */
+
+    compareValueCloseTo("transform", "rotate(calc(1rad + 0.5turn))", 0.0001, "rotate(237.29578deg)", "addition of 2 angle units: rad plus turn");
+
+    compareValueCloseTo("transform", "rotate(calc(45grad + 45grad))", 0.0001, "rotate(90grad)", "addition of 2 angle units: grad plus grad");
+
+    compareValueCloseTo("transform", "rotate(calc(10grad + 0.5turn))", 0.0001, "rotate(189deg)", "addition of 2 angle units: grad plus turn");
+
+    /*
+    10 gradians is 9 degrees.
+    */
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+
+   /* Substraction of angle unit */
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+    compareValueCloseTo("transform", "rotate(calc(45deg - 15deg))", 0.0001, "rotate(30deg)", "substraction of angle unit: deg minus deg");
+
+    compareValueCloseTo("transform", "rotate(calc(90deg - 1rad))", 0.0001, "rotate(32.70422deg)", "substraction of angle unit: deg minus rad");
+
+    /*
+    1 radian == 57.295779513 degrees
+    */
+
+    compareValueCloseTo("transform", "rotate(calc(38deg - 20grad))", 0.0001, "rotate(20deg)", "substraction of angle unit: deg minus grad");
+
+    compareValueCloseTo("transform", "rotate(calc(360deg - 0.5turn))", 0.0001, "rotate(180deg)", "substraction of angle unit: deg minus turn");
+
+    compareValueCloseTo("transform", "rotate(calc(45rad - 15rad))", 0.0001, "rotate(30rad)", "substraction of angle unit: rad minus rad");
+
+    compareValueCloseTo("transform", "rotate(calc(30rad - 10grad))", 0.0001, "rotate(1709.87339deg)", "substraction of angle unit: rad minus grad");
+
+    /*
+    30 radians is 1718.8733854 degrees ; 10 gradians is 9 degrees.
+    */
+
+    compareValueCloseTo("transform", "rotate(calc(4rad - 0.1turn))", 0.0001, "rotate(193.18312deg)", "substraction of angle unit: rad minus turn");
+
+    /*
+    4 radians is 229.183118052 degrees ; 0.1 turn is 36 degrees.
+    */
+
+    compareValueCloseTo("transform", "rotate(calc(45grad - 15grad))", 0.0001, "rotate(30grad)", "substraction of angle unit: grad minus grad");
+
+    compareValueCloseTo("transform", "rotate(calc(100grad - 0.25turn))", 0.0001, "rotate(0deg)", "substraction of angle unit: grad minus turn");
+
+
+   /* Multiplication of angle unit */
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+    compareValueCloseTo("transform", "rotate(calc(45deg * 2))", 0.0001, "rotate(90deg)", "multiplication of angle unit: deg multiplied by int");
+
+    compareValueCloseTo("transform", "rotate(calc(2 * 45rad))", 0.0001, "rotate(90rad)", "multiplication of angle unit: int multiplied by rad");
+
+    compareValueCloseTo("transform", "rotate(calc(45grad * 2))", 0.0001, "rotate(90grad)", "multiplication of angle unit: grad multiplied by int");
+
+    compareValueCloseTo("transform", "rotate(calc(2 * 45turn))", 0.0001, "rotate(90turn)", "multiplication of angle unit: int multiplied by turn");
+
+
+   /* Division of angle unit */
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+    compareValueCloseTo("transform", "rotate(calc(90deg / 2))", 0.0001, "rotate(45deg)", "division of angle unit: deg divided by int");
+
+    compareValueCloseTo("transform", "rotate(calc(90rad / 2))", 0.0001, "rotate(45rad)", "division of angle unit: rad divided by int");
+
+    compareValueCloseTo("transform", "rotate(calc(90grad / 2))", 0.0001, "rotate(45grad)", "division of angle unit: grad divided by int");
+
+    compareValueCloseTo("transform", "rotate(calc(90turn / 2))", 0.0001, "rotate(45turn)", "division of angle unit: turn divided by int");
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+    /*
+
+    deg
+       Degrees. There are 360 degrees in a full circle.
+
+    grad
+       Gradians, also known as "gons" or "grades". There are 400 gradians in a full circle.
+
+    rad
+       Radians. There are 2π radians in a full circle.
+
+    1rad == 57.295779513°
+    https://www.rapidtables.com/convert/number/radians-to-degrees.html
+
+    π == Math.PI == 3.141592653589793
+
+    turn
+       Turns. There is 1 turn in a full circle.
+
+   */
+
+
+
+  /* Testing conversion of angle unit  */
+
+ /* compareValueCloseTo(property_name, calcValue, epsilon, expectedValue, description)  */
+
+    compareValueCloseTo("transform", "rotate(calc(50grad)", 0.0001, "rotate(45deg)", "conversion of angle unit: grad into deg");
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-002-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-002-expected.txt
new file mode 100644 (file)
index 0000000..3e78081
--- /dev/null
@@ -0,0 +1,8 @@
+
+PASS testing background-position: calc(2px + 3px) calc(4px + 5px) 
+PASS testing background-position: calc(18px - 7px) calc(19px - 7px) 
+PASS testing background-position: calc(4 * 5px) calc(6px * 4) 
+PASS testing background-position: calc(100px / 4) calc(119px / 7) 
+FAIL testing background-position: calc(6px + 21%) calc(7em + 22%) assert_equals: expected "calc(21% + 6px) calc(22% + 112px)" but got "calc(6px + 21%) calc(112px + 22%)"
+FAIL testing background-position: calc(-8px + 23%) calc(-9em + 24%) assert_equals: expected "calc(23% - 8px) calc(24% - 144px)" but got "calc(-8px + 23%) calc(-144px + 24%)"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-002.html
new file mode 100644 (file)
index 0000000..c1dad2e
--- /dev/null
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: computed value of 'background-position' when specified with calc() function</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#calc-computed-value">
+
+  <meta name="flags" content="">
+  <meta content="This test verifies how 6 calc() functions are computed for 'background-position'." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+  var targetElement = document.getElementById("target");
+
+    function verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.setProperty(property_name, initial_value);
+
+      /*
+      The purpose of the initial_value is to act as a fallback
+      value in case the calc() function in the specified value
+      fails or in case it generates an invalid value. Since we
+      are running 6 consecutive tests on the same element,
+      then it is necessary to 'reset' its property to an
+      initial value.
+      */
+
+      targetElement.style.setProperty(property_name, specified_value);
+
+      assert_equals(getComputedStyle(targetElement)[property_name], expected_value);
+
+      }, description);
+    }
+
+ /* verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description) */
+
+    verifyComputedStyle("background-position", "initial", "calc(2px + 3px) calc(4px + 5px)", "5px 9px", "testing background-position: calc(2px + 3px) calc(4px + 5px)");
+
+    verifyComputedStyle("background-position", "initial", "calc(18px - 7px) calc(19px - 7px)", "11px 12px", "testing background-position: calc(18px - 7px) calc(19px - 7px)");
+
+    verifyComputedStyle("background-position", "initial", "calc(4 * 5px) calc(6px * 4)", "20px 24px", "testing background-position: calc(4 * 5px) calc(6px * 4)");
+
+    verifyComputedStyle("background-position", "initial", "calc(100px / 4) calc(119px / 7)", "25px 17px", "testing background-position: calc(100px / 4) calc(119px / 7)");
+
+    verifyComputedStyle("background-position", "initial", "calc(6px + 21%) calc(7em + 22%)", "calc(21% + 6px) calc(22% + 112px)", "testing background-position: calc(6px + 21%) calc(7em + 22%)");
+
+  /*
+    "
+    (...) background-position has layout-dependent behavior for
+    percentage values, and thus does not resolve percentages
+    until used-value time. Due to this, background-position
+    computation preserves the percentage in a calc(). (...)
+    "
+    https://www.w3.org/TR/css-values-3/#calc-computed-value
+  */
+
+    verifyComputedStyle("background-position", "initial", "calc(-8px + 23%) calc(-9em + 24%)", "calc(23% - 8px) calc(24% - 144px)", "testing background-position: calc(-8px + 23%) calc(-9em + 24%)");
+
+ /* verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description) */
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-003-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-003-expected.txt
new file mode 100644 (file)
index 0000000..3d1732d
--- /dev/null
@@ -0,0 +1,8 @@
+
+PASS testing background-position: calc(2px + 3px) calc(4px + 5px) 
+PASS testing background-position: calc(18px - 7px) calc(19px - 7px) 
+PASS testing background-position: calc(4 * 5px) calc(6px * 4) 
+PASS testing background-position: calc(100px / 4) calc(119px / 7) 
+FAIL testing background-position: calc(6px + 21%) calc(7em + 22%) assert_equals: expected "calc(21% + 6px) calc(22% + 7em)" but got "calc(6px + 21%) calc(7em + 22%)"
+FAIL testing background-position: calc(-8px + 23%) calc(-9em + 24%) assert_equals: expected "calc(23% - 8px) calc(24% - 9em)" but got "calc(-8px + 23%) calc(-9em + 24%)"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-background-position-003.html
new file mode 100644 (file)
index 0000000..61ba0a4
--- /dev/null
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: serialization of 'background-position' when specified with calc() function</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#calc-serialize">
+
+  <meta name="flags" content="">
+  <meta content="This test verifies how 6 calc() functions are serialized for 'background-position'." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+  var targetElement = document.getElementById("target");
+
+    function verifySerialization(specified_value, serialization_expected, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.backgroundPosition = specified_value;
+
+      assert_equals(targetElement.style.backgroundPosition, serialization_expected);
+
+      }, description);
+    }
+
+  /*
+    verifySerialization(specified_value, serialization_expected, description)
+  */
+
+    verifySerialization("calc(2px + 3px) calc(4px + 5px)", "calc(5px) calc(9px)", "testing background-position: calc(2px + 3px) calc(4px + 5px)");
+
+    verifySerialization("calc(18px - 7px) calc(19px - 7px)", "calc(11px) calc(12px)", "testing background-position: calc(18px - 7px) calc(19px - 7px)");
+
+    verifySerialization("calc(4 * 5px) calc(6px * 4)", "calc(20px) calc(24px)", "testing background-position: calc(4 * 5px) calc(6px * 4)");
+
+    verifySerialization("calc(100px / 4) calc(119px / 7)", "calc(25px) calc(17px)", "testing background-position: calc(100px / 4) calc(119px / 7)");
+
+  /*
+    verifySerialization(specified_value, serialization_expected, description)
+  */
+
+    verifySerialization("calc(6px + 21%) calc(7em + 22%)", "calc(21% + 6px) calc(22% + 7em)", "testing background-position: calc(6px + 21%) calc(7em + 22%)");
+
+    verifySerialization("calc(-8px + 23%) calc(-9em + 24%)", "calc(23% - 8px) calc(24% - 9em)", "testing background-position: calc(-8px + 23%) calc(-9em + 24%)");
+
+  /*
+
+  "
+  Sort the terms in the following order:
+
+    The number, if present
+
+    The percentage, if present
+
+    The dimensions, ordered by their units ASCII case-insensitive alphabetically
+  "
+  https://www.w3.org/TR/css-values-4/#math-function-serialize-a-summation
+
+  */
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-ch-ex-lang-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-ch-ex-lang-expected.html
new file mode 100644 (file)
index 0000000..e0ac1ea
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test Reference</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<style>
+div {
+  width: calc(1ex + 1ch + 1em);
+  height: calc(1ex + 1ch + 1em);
+  background: green;
+}
+</style>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-ch-ex-lang.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-ch-ex-lang.html
new file mode 100644 (file)
index 0000000..eb44747
--- /dev/null
@@ -0,0 +1,16 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test: Calc in font-size with ch / ex units across lang changes</title>
+<link rel="help" href="https://drafts.csswg.org/css-values/#ch">
+<link rel="help" href="https://drafts.csswg.org/css-values/#ex">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1431031">
+<link rel="match" href="calc-ch-ex-lang-ref.html">
+<style>
+div[lang] {
+  font-size: calc(1ex + 1ch + 1em);
+}
+</style>
+<div lang="en">
+  <div style="width: 1em; height: 1em; background: green;"></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-calc-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-calc-expected.html
new file mode 100644 (file)
index 0000000..c705321
--- /dev/null
@@ -0,0 +1 @@
+<html style="background: green"></html>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-calc.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-calc.html
new file mode 100644 (file)
index 0000000..51a1ae5
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Calc() inside calc()
+       </title>
+       <meta name="assert" content="
+               The calc() function notation is allowed inside a calc() notation.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation"/>
+
+       <link
+               rel="match"
+               href="reference/all-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: red; overflow: hidden; }
+                       #outer { position: absolute; top: 0px; left: 0px; background: green; width: 100%; }
+                       #outer { height: calc(calc(100%)); }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-color-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-color-001-expected.txt
new file mode 100644 (file)
index 0000000..a2179b2
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS calc() in color functions 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-color-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-color-001.html
new file mode 100644 (file)
index 0000000..7db087d
--- /dev/null
@@ -0,0 +1,26 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test: calc() function in &lt;color&gt;</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div id="testNode"></div>
+<script>
+const div = document.querySelector("#testNode");
+const TESTS = {
+  // specified -> expected
+  "rgb(calc(0), calc(255 + 0), calc(140 - 139 - 1))": "rgb(0, 255, 0)",
+  "rgba(calc(0%) calc(100%) calc(0%) / calc(10% * 10))": "rgb(0, 255, 0)",
+  "hsl(calc(5deg * (360 / 5)), calc(10% * 10), calc(10% * 10))": "rgb(255, 255, 255)",
+  "hsla(calc(5 * (360 / 5)), calc(10% * 10), calc(10% * 10), calc(1.0))": "rgb(255, 255, 255)"
+}
+
+test(function() {
+  for (let test in TESTS) {
+    div.style.backgroundColor = "";
+    div.style.backgroundColor = test;
+    assert_equals(getComputedStyle(div).backgroundColor, TESTS[test], test);
+  }
+}, "calc() in color functions");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-counter-001-expected.xhtml b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-counter-001-expected.xhtml
new file mode 100644 (file)
index 0000000..5614ec0
--- /dev/null
@@ -0,0 +1,27 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Test: counter-* properties with a calc() expression</title>
+  <link rel="author" title="Ondřej Žára" href="https://ondras.zarovi.cz/"/>
+  <style type="text/css">
+  body {
+   white-space: nowrap;
+  }
+  </style>
+ </head>
+ <body>
+
+ <p>The following two lines should be the same:</p>
+
+ <div id="test">
+  <span id="a">8</span>
+  <span id="b">10</span>
+ </div>
+
+ <div id="reference">
+  <span>8</span>
+  <span>10</span>
+ </div>
+
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-counter-001.xhtml b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-counter-001.xhtml
new file mode 100644 (file)
index 0000000..1a2db83
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Test: counter-* properties with a calc() expression</title>
+  <link rel="author" title="Ondřej Žára" href="https://ondras.zarovi.cz/"/>
+
+  <link rel="help" href="https://www.w3.org/TR/CSS21/generate.html#counters"/>
+  <link rel="help" href="https://www.w3.org/TR/CSS21/generate.html#propdef-content"/>
+  <link rel="help" href="https://www.w3.org/TR/CSS21/syndata.html#counter"/>
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#calc-notation"/>
+  <link rel="help" href="https://www.w3.org/TR/css-lists-3/#counter-properties"/>
+  <link rel="match" href="calc-in-counter-001-ref.xhtml"/>
+  <style type="text/css">
+
+  body {
+   white-space: nowrap;
+  }
+
+  #a { counter-reset: a calc(3 + 5); }
+  #a::before { content: counter(a); }
+
+  #b { counter-reset: b 0; counter-increment: b calc(4 + 6); }
+  #b::before { content: counter(b); }
+
+  </style>
+ </head>
+ <body>
+
+ <p>The following two lines should be the same:</p>
+
+ <div id="test">
+  <span id="a"></span>
+  <span id="b"></span>
+ </div>
+
+ <div id="reference">
+  <span>8</span>
+  <span>10</span>
+ </div>
+
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-font-feature-settings-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-font-feature-settings-expected.txt
new file mode 100644 (file)
index 0000000..e39feaa
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS calc() in font-feature-settings 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-font-feature-settings.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-font-feature-settings.html
new file mode 100644 (file)
index 0000000..0ce8d7e
--- /dev/null
@@ -0,0 +1,22 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test: calc() function in font-feature-settings</title>
+<link rel="author" title="Chris Nardi" href="mailto:cnardi@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+    #test {
+        font-feature-settings: "vert" calc(2);
+    }
+</style>
+<div id="test"></div>
+<script>
+    const div = document.querySelector("#test");
+    // Chrome serializes font-feature-settings with single quotes vs. double quotes
+    // in other browsers, but that's not the issue being tested.
+    const expected = ["'vert' 2", "\"vert\" 2"];
+    test(function() {
+        assert_in_array(getComputedStyle(div).fontFeatureSettings, expected);
+    }, "calc() in font-feature-settings");
+</script>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-max-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-max-expected.html
new file mode 100644 (file)
index 0000000..c705321
--- /dev/null
@@ -0,0 +1 @@
+<html style="background: green"></html>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-max.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-max.html
new file mode 100644 (file)
index 0000000..4ae44e4
--- /dev/null
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8">
+  <title>CSS Values and Units Test: calc() in max()</title>
+
+  <meta name="assert" content="The calc() function notation is allowed inside a max() notation.">
+  <link rel="author" title="Fuqiao Xue" href="mailto:xfq@w3.org">
+  <link rel="help" href="https://drafts.csswg.org/css-values-4/#calc-syntax">
+  <link rel="match" href="reference/all-green.html">
+
+  <style>
+      html, body { margin: 0px; padding: 0px; }
+
+      html { background: red; overflow: hidden; }
+      #outer { position: absolute; top: 0px; left: 0px; background: green; width: 100%; }
+
+      #outer { height: max(calc(100%)); }
+  </style>
+
+</head>
+<body>
+
+  <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-001-expected.html
new file mode 100644 (file)
index 0000000..c705321
--- /dev/null
@@ -0,0 +1 @@
+<html style="background: green"></html>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-001.html
new file mode 100644 (file)
index 0000000..af59969
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units and Media Queries Test:
+               Calc function inside media queries
+       </title>
+       <meta name="assert" content="
+               The calc() expression is supported in the min-width media query.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
+       <link rel="help" href="http://www.w3.org/TR/css3-mediaqueries/#width">
+
+       <link
+               rel="match"
+               href="reference/all-green.html"
+       />
+
+       <style type="text/css">
+
+               html { background: red; }
+               @media (min-width: calc(100px)) {
+                       html { background: green; }
+               }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="target"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-002-expected.html
new file mode 100644 (file)
index 0000000..c705321
--- /dev/null
@@ -0,0 +1 @@
+<html style="background: green"></html>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-in-media-queries-002.html
new file mode 100644 (file)
index 0000000..4b7d7c8
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units and Media Queries Test:
+               Calc function inside media queries
+       </title>
+       <meta name="assert" content="
+               The calc() expression is supported in the min-width media query properly (=with range clamping).
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
+       <link rel="help" href="http://www.w3.org/TR/css3-mediaqueries/#width">
+
+       <link
+               rel="match"
+               href="reference/all-green.html"
+       />
+
+       <style type="text/css">
+
+               html { background: red; }
+               @media (min-width: calc(-100px)) { /* should clamp to 0px */
+                       html { background: green; }
+               }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="target"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-integer-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-integer-expected.txt
new file mode 100644 (file)
index 0000000..f87ba34
--- /dev/null
@@ -0,0 +1,9 @@
+
+FAIL Sanity assert_equals: expected "2" but got "auto"
+FAIL Basic division works assert_equals: expected "2" but got "auto"
+FAIL Rounds up if fractional part is >= 0.5 assert_equals: expected "1" but got "auto"
+FAIL Accepts numbers, and rounds assert_equals: expected "1" but got "auto"
+FAIL Operation between <integer> and <number> works assert_equals: expected "3" but got "auto"
+FAIL Rounds down if fractional part is < 0.5 assert_equals: expected "0" but got "auto"
+FAIL Only rounds at the end of the conversion assert_equals: expected "1" but got "auto"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-integer.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-integer.html
new file mode 100644 (file)
index 0000000..821dac4
--- /dev/null
@@ -0,0 +1,58 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Tests: calc() and division for integers</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="author" title="Mozilla" href="https://mozilla.org">
+<link rel="help" href="https://drafts.csswg.org/css-values-4/#calc-range">
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/2337">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div id="test"></div>
+<script>
+const TESTS = [
+  {
+    specified: "calc(2)",
+    computed: "2",
+    description: "Sanity",
+  },
+  {
+    specified: "calc(4 / 2)",
+    computed: "2",
+    description: "Basic division works",
+  },
+  {
+    specified: "calc(1 / 2)",
+    computed: "1",
+    description: "Rounds up if fractional part is >= 0.5",
+  },
+  {
+    specified: "calc(0.5)",
+    computed: "1",
+    description: "Accepts numbers, and rounds",
+  },
+  {
+    specified: "calc(6 / 2.0)",
+    computed: "3",
+    description: "Operation between <integer> and <number> works",
+  },
+  {
+    specified: "calc(1 / 3)",
+    computed: "0",
+    description: "Rounds down if fractional part is < 0.5",
+  },
+  {
+    specified: "calc(calc(1 / 3) * 3)",
+    computed: "1",
+    description: "Only rounds at the end of the conversion",
+  }
+];
+
+const testElement = document.getElementById("test");
+for (const { specified, computed, description } of TESTS) {
+  test(function() {
+    testElement.style.zIndex = "42"; // Just something that we know it's valid and makes tests not rely on order.
+    testElement.style.zIndex = specified;
+    assert_equals(getComputedStyle(testElement).zIndex, computed);
+  }, description);
+}
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-invalid-range-clamping-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-invalid-range-clamping-expected.html
new file mode 100644 (file)
index 0000000..f3da3dd
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Viewport units are interpolated correctly (reference rendering)
+       </title>
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { position: relative; background: green; }
+
+                       #outer { width: 200px; height: 200px; }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-invalid-range-clamping.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-invalid-range-clamping.html
new file mode 100644 (file)
index 0000000..a88416a
--- /dev/null
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               Range clamping into calc() expressions
+       </title>
+       <meta name="assert" content="
+               A calc expression can evaluate to a value which is outside the validity range.
+               If it does, this value must be clamped into the range.
+               The declaration must not be ignored.
+       " />
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       />
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation"/>
+
+       <link
+               rel="match"
+               href="reference/200-200-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: white; overflow: hidden; }
+                       #outer { background: green; width: 200px; height: 200px; }
+                       #outer { border-radius: 10px; border-radius: calc(-10px); }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-letter-spacing-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-letter-spacing-expected.txt
new file mode 100644 (file)
index 0000000..a04e966
--- /dev/null
@@ -0,0 +1,8 @@
+
+PASS testing letter-spacing: calc(1 + 1px) 
+PASS testing letter-spacing: calc(1 + 100%) 
+PASS testing letter-spacing: calc(100%) 
+PASS testing letter-spacing: calc(10px) bla 
+PASS testing letter-spacing: calc(bla) 10px 
+PASS testing letter-spacing: calc(10px) 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-letter-spacing.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-letter-spacing.html
new file mode 100644 (file)
index 0000000..444785b
--- /dev/null
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: computed value of 'letter-spacing' when specified with calc() function</title>
+
+  <!--
+
+  Original test is:
+
+https://chromium.googlesource.com/chromium/src/+/c825d655f6aaf73484f9d56e9012793f5b9668cc/third_party/WebKit/LayoutTests/css3/calc/letter-spacing.html
+
+  -->
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css3-values/#calc-computed-value">
+
+  <meta name="flags" content="invalid">
+  <meta content="This test verifies how 6 calc() functions are computed for 'letter-spacing'." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+    function verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description)
+    {
+
+    var elemTarget = document.getElementById("target");
+
+    test(function()
+      {
+
+      elemTarget.style.setProperty(property_name, initial_value);
+
+      /*
+      In exactly 5 out of the 6 sub-tests, the initial_value will
+      act as a fallback value because the calc() function in the
+      specified value generates an invalid value. Since we are
+      running 6 consecutive tests on the same element, then
+      it is necessary to 'reset' its property to an initial
+      value.
+      */
+
+      elemTarget.style.setProperty(property_name, specified_value);
+
+      assert_equals(getComputedStyle(elemTarget)[property_name], expected_value, specified_value + ' should compute to ' + expected_value);
+
+      }, description);
+    }
+
+ /* verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description) */
+
+    verifyComputedStyle("letter-spacing", "20px", "calc(1 + 1px)", "20px", "testing letter-spacing: calc(1 + 1px)");
+
+    verifyComputedStyle("letter-spacing", "20px", "calc(1 + 100%)", "20px", "testing letter-spacing: calc(1 + 100%)");
+
+    verifyComputedStyle("letter-spacing", "20px", "calc(100%)", "20px", "testing letter-spacing: calc(100%)");
+
+    verifyComputedStyle("letter-spacing", "20px", "calc(10px) bla", "20px", "testing letter-spacing: calc(10px) bla");
+
+    verifyComputedStyle("letter-spacing", "20px", "calc(bla) 10px", "20px", "testing letter-spacing: calc(bla) 10px");
+
+    verifyComputedStyle("letter-spacing", "initial", "calc(10px)", "10px", "testing letter-spacing: calc(10px)");
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-min-height-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-min-height-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-min-height.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-min-height.html
new file mode 100644 (file)
index 0000000..a3cfa47
--- /dev/null
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: calc() function in 'min-height' and 'box-sizing: border-box' (complex)</title>
+
+  <!--
+
+  Original test is:
+
+https://chromium.googlesource.com/chromium/src/+/c825d655f6aaf73484f9d56e9012793f5b9668cc/third_party/WebKit/LayoutTests/css3/calc/calc-min-height.html
+
+  The original test is related to:
+
+  Issue 580508: Height of content changes after multiple reloads
+  https://bugs.chromium.org/p/chromium/issues/detail?id=580508
+
+  -->
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#calc-notation">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+
+  <meta name="flags" content="">
+  <meta name="assert" content="This test checks how 'min-height' with calc(percentage) and 'box-sizing' are handled. The percentage in the calc() is calculated on the content box height of div#container.">
+
+  <style>
+  div#container
+    {
+      border-bottom: transparent solid 100px;
+      border-right: transparent solid 100px;
+      height: 400px;
+      width: 100px;
+    }
+
+  div#item
+    {
+      background-color: red;
+      box-sizing: border-box;
+      height: 50px;
+      min-height: calc(50% - 100px);
+    }
+
+  div#item > div
+    {
+      background-color: green;
+      border-bottom: green solid 34px; /* arbitrary border-bottom-width value */
+      border-top: green solid 12px; /* arbitrary border-top-width value */
+      box-sizing: border-box;
+      height: 17px;
+      min-height: 100%; /* content height should be 100px - 34px - 12px == 54px */
+      overflow-y: visible;
+      /*
+      If the content height of innermost div is taller
+      than 54px, then a green rectangle (not a square)
+      will be created.
+
+      If the content height of innermost div is less
+      than 54px, then an horizontal stripe of red
+      will become visible.
+      */
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="container">
+
+    <div id="item">
+
+      <div></div>
+
+    </div>
+
+  </div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-002-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-002-expected.txt
new file mode 100644 (file)
index 0000000..419ff9d
--- /dev/null
@@ -0,0 +1,8 @@
+
+PASS testing calc(20px + calc(80px)) 
+PASS testing calc(calc(100px)) 
+PASS testing calc(calc(2) * calc(50px) 
+PASS testing calc(calc(150px*2/3) 
+PASS testing calc(calc(2 * calc(calc(3)) + 4) * 10px) 
+FAIL testing calc(50px + calc(40%)) assert_equals: expected "calc(40% + 50px)" but got "calc(50px + 40%)"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-002.html
new file mode 100644 (file)
index 0000000..269d4e9
--- /dev/null
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: serialization of summation involving nested calc()</title>
+
+  <!--
+
+  This test is an adapted version of the portion of the original test
+
+  https://chromium.googlesource.com/chromium/src/+/c825d655f6aaf73484f9d56e9012793f5b9668cc/third_party/WebKit/LayoutTests/css3/calc/calc-nesting.html
+
+  which required using property-parsing-test.js
+
+  -->
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#math-function-simplify-an-expression">
+
+  <meta content="This test checks that how a summation involving one or more nested calc() is performed and serialized." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+  var targetElement = document.getElementById("target");
+
+    function verifySerialization(specified_value, serialization_expected, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.left = specified_value;
+
+      assert_equals(targetElement.style.left, serialization_expected);
+
+      }, description);
+    }
+
+    verifySerialization("calc(20px + calc(80px))", "calc(100px)", "testing calc(20px + calc(80px))");
+
+    verifySerialization("calc(calc(100px))", "calc(100px)", "testing calc(calc(100px))");
+
+    verifySerialization("calc(calc(2) * calc(50px)", "calc(100px)", "testing calc(calc(2) * calc(50px)");
+
+    verifySerialization("calc(calc(150px*2/3)", "calc(100px)", "testing calc(calc(150px*2/3)");
+
+    verifySerialization("calc(calc(2 * calc(calc(3)) + 4) * 10px)", "calc(100px)", "testing calc(calc(2 * calc(calc(3)) + 4) * 10px)");
+
+    verifySerialization("calc(50px + calc(40%))", "calc(40% + 50px)", "testing calc(50px + calc(40%))");
+
+  /*
+
+  "
+  Sort the terms in the following order:
+
+    The number, if present
+
+    The percentage, if present
+
+    The dimensions, ordered by their units ASCII case-insensitive alphabetically
+  "
+  https://www.w3.org/TR/css-values-4/#math-function-serialize-a-summation
+
+  */
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting-expected.txt
new file mode 100644 (file)
index 0000000..db3ef82
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS Nested calcs should work with layout 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-nesting.html
new file mode 100644 (file)
index 0000000..f68d4ae
--- /dev/null
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: nested calc() functions</title>
+
+  <!--
+
+  This test is the first portion of the original test
+
+  https://chromium.googlesource.com/chromium/src/+/c825d655f6aaf73484f9d56e9012793f5b9668cc/third_party/WebKit/LayoutTests/css3/calc/calc-nesting.html
+
+  -->
+
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#calc-notation">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<style>
+#parent { width: 200px; }
+#div1 { width: calc(calc(50px)); }
+#div2 { width: calc(calc(60%) - 20px); }
+#div3 { width: calc(calc(3 * 25%)); }
+#div4 {
+    --width: calc(10% + 30px);
+    width: calc(2 * var(--width));
+}
+</style>
+<div id=parent>
+  <div id=div1></div>
+  <div id=div2></div>
+  <div id=div3></div>
+  <div id=div4></div>
+</div>
+<script>
+// Tests that require layout
+test(function(){
+    assert_equals(getComputedStyle(div1).width, "50px");
+    assert_equals(getComputedStyle(div2).width, "100px");
+    assert_equals(getComputedStyle(div3).width, "150px");
+    assert_equals(getComputedStyle(div4).width, "100px");
+}, "Nested calcs should work with layout");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-parenthesis-stack-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-parenthesis-stack-expected.html
new file mode 100644 (file)
index 0000000..c705321
--- /dev/null
@@ -0,0 +1 @@
+<html style="background: green"></html>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-parenthesis-stack.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-parenthesis-stack.html
new file mode 100644 (file)
index 0000000..d8dbafb
--- /dev/null
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html>
+<head>
+       <meta charset="utf-8">
+       <title>
+               CSS Values and Units Test:
+               32 nested pairs of parentheses inside calc()
+       </title>
+       <meta name="assert" content="
+               This test checks the support for the minimum required number of 32 nested pairs of parentheses inside a calc() function.
+       " />
+
+  <!--
+  More info:
+  [css-values] Limit nested pairs of parentheses in calc to 32
+  https://github.com/w3c/csswg-drafts/issues/3462
+  -->
+
+       <link
+               rel="author"
+               title="François REMY"
+               href="mailto:fremycompany.developer@yahoo.fr"
+       / >
+
+       <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation"/>
+
+       <link
+               rel="match"
+               href="reference/all-green.html"
+       />
+
+       <style type="text/css">
+
+                       html, body { margin: 0px; padding: 0px; }
+
+                       html { background: red; overflow: hidden; }
+                       #outer { position: absolute; top: 0px; left: 0px; background: green; width: 100%; }
+                       #outer { height: calc((((((((((((((((((((((((((((((((100%)))))))))))))))))))))))))))))))); }
+
+       </style>
+
+</head>
+<body>
+
+       <div id="outer"></div>
+
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-positive-fraction-001.html
new file mode 100644 (file)
index 0000000..383b4af
--- /dev/null
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Test: calc() with positive fraction halfway between adjacent integers</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#combine-integers">
+  <link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      height: 100px;
+      position: absolute;
+      width: 100px;
+    }
+
+  div#red-overlapped
+    {
+      background-color: red;
+      z-index: 2;
+    }
+
+  div#green-overlapping
+    {
+      background-color: green;
+      z-index: calc(3 / 2);
+      /*
+      should resolve to 'z-index: 2' since "values
+      halfway between adjacent integers rounded
+      towards positive infinity" and since
+      div#green-overlapping is last in document
+      tree order, then it should overlap
+      div#red-overlapped
+      */
+    }
+  </style>
+
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+  <div id="red-overlapped"></div>
+
+  <div id="green-overlapping"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rem-lang-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rem-lang-expected.html
new file mode 100644 (file)
index 0000000..a0f6add
--- /dev/null
@@ -0,0 +1,6 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test Reference</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<p>You should see a green box twice-the-initial-font-size wide.</p>
+<div style="width: 2em; height: 2em; background: green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rem-lang.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rem-lang.html
new file mode 100644 (file)
index 0000000..3994efc
--- /dev/null
@@ -0,0 +1,17 @@
+<!doctype html>
+<html lang="en"><!-- The lang is important! -->
+<meta charset="utf-8">
+<title>CSS Test: Calc with rem and relative units on the root element</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="help" href="https://drafts.csswg.org/css-values/#rem">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1431031">
+<link rel="match" href="calc-rem-lang-ref.html">
+<style>
+  html {
+    font-size: calc(1rem + 1em);
+  }
+</style>
+<p style="font-size: initial">You should see a green box twice-the-initial-font-size wide.</p>
+<div style="width: 1em; height: 1em; background: green;"></div>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rgb-percent-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rgb-percent-001-expected.txt
new file mode 100644 (file)
index 0000000..ae714c4
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS testing rgb(calc(5% + 15%), calc(40% / 2), calc(5% * 4)) 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rgb-percent-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rgb-percent-001.html
new file mode 100644 (file)
index 0000000..1446c28
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values Test: computed value of rgb() with calc(percentage)</title>
+
+  <!--
+
+  Original code is from Yves Lafon
+
+  Re: [css3-values] percentage in calc() and attr()
+  https://lists.w3.org/Archives/Public/www-style/2016May/0028.html
+
+  -->
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#calc-serialize">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <style>
+  div#target
+    {
+      background-color: rgb(calc(5% + 15%), calc(40% / 2), calc(5% * 4));
+      height: 100px;
+    }
+  </style>
+
+  <div id="target"></div>
+
+  <script>
+  test(function()
+    {
+      assert_equals(getComputedStyle(document.getElementById("target")).backgroundColor, "rgb(51, 51, 51)");
+    }, "testing rgb(calc(5% + 15%), calc(40% / 2), calc(5% * 4))");
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rounding-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rounding-001-expected.txt
new file mode 100644 (file)
index 0000000..c09d08b
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS calc() doesn't accumulate much error that makes flex items overflow 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rounding-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-rounding-001.html
new file mode 100644 (file)
index 0000000..dfd03a6
--- /dev/null
@@ -0,0 +1,43 @@
+<!doctype html>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<meta charset="utf-8">
+<title>CSS Test: calc rounding doesn't accumulate a lot of error.</title>
+<link rel="author" href="mailto:mats@mozilla.com" title="Mats Palmgren">
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1323735">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+body {
+  background: #f3f5f6;
+}
+
+div {
+  font-size: 15px;
+  width: 401px;
+  margin: 20px;
+  background: #fff;
+  display: flex;
+  flex-wrap: wrap;
+}
+
+b {
+  height: 50px;
+  background: red;
+  width: calc((100% - 4.5em) / 4); /* .5em gutters */
+}
+
+b:not(:last-child) {
+  margin-right: 1.5em;
+}
+</style>
+<div><b></b><b></b><b></b><b></b></div>
+<script>
+  test(function() {
+    assert_equals(document.querySelector("div").offsetHeight, 50);
+  }, "calc() doesn't accumulate much error that makes flex items overflow");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-002-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-002-expected.txt
new file mode 100644 (file)
index 0000000..f2b30f7
--- /dev/null
@@ -0,0 +1,13 @@
+
+FAIL testing calc(1vh + 2px + 3%) assert_equals: expected "calc(3% + 2px + 1vh)" but got "calc((1vh + 2px) + 3%)"
+PASS testing calc(4px + 1vh) 
+FAIL testing calc(5px + 6em + 1vh) assert_equals: expected "calc(6em + 5px + 1vh)" but got "calc((5px + 6em) + 1vh)"
+FAIL testing calc(1vh - 7px) assert_equals: expected "calc(-7px + 1vh)" but got "calc(1vh - 7px)"
+FAIL testing calc(-8px + 9em + 1vh) assert_equals: expected "calc(9em - 8px + 1vh)" but got "calc((-8px + 9em) + 1vh)"
+FAIL testing calc(1pc + 1in + 1vh + 10%) assert_equals: expected "calc(10% + 112px + 1vh)" but got "calc((112px + 1vh) + 10%)"
+FAIL testing calc(25.4q + 1vh + 12%) assert_equals: expected "calc(12% + 24px + 1vh)" but got "calc((112px + 1vh) + 10%)"
+FAIL testing calc(1em + 1.27cm + 13% + 3em) assert_equals: expected "calc(13% + 4em + 48px)" but got "calc(((1em + 1.27cm) + 13%) + 3em)"
+FAIL testing calc(1vmin - 14%) assert_equals: expected "calc(-14% + 1vmin)" but got "calc(1vmin - 14%)"
+FAIL testing calc(15vw + 16vmin - 17vh) assert_equals: expected "calc(-17vh + 16vmin + 15vw)" but got "calc((15vw + 16vmin) - 17vh)"
+PASS testing calc(-80px + 25.4mm) 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-002.html
new file mode 100644 (file)
index 0000000..a06b33e
--- /dev/null
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units: calc() serialization of a summation (complex)</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#compat">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#calc-serialize">
+
+  <meta content="This test verifies how 11 summations of mixed length units are serialized. Absolute length units, relative length units, font-relative length units, viewport-percentage length units and percentage units are tested." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+  var targetElement = document.getElementById("target");
+
+    function verifySerialization(specified_value, serialization_expected, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.height = specified_value;
+
+      assert_equals(targetElement.style.height, serialization_expected);
+
+      }, description);
+    }
+
+  /*
+
+  "
+  Sort the terms in the following order:
+
+    The number, if present
+
+    The percentage, if present
+
+    The dimensions, ordered by their units ASCII case-insensitive alphabetically
+  "
+  https://www.w3.org/TR/css-values-4/#math-function-serialize-a-summation
+
+  cm  centimeters  1cm = 96px/2.54
+  mm  millimeters  1mm = 1/10th of 1cm
+  Q   quarter-millimeters  1Q = 1/40th of 1cm
+  in  inches  1in = 2.54cm = 96px
+  pc  picas  1pc = 1/6th of 1in
+  pt  points  1pt = 1/72th of 1in
+  px  pixels  1px = 1/96th of 1in
+
+  */
+
+    verifySerialization("calc(1vh + 2px + 3%)", "calc(3% + 2px + 1vh)", "testing calc(1vh + 2px + 3%)");
+
+    verifySerialization("calc(4px + 1vh)", "calc(4px + 1vh)", "testing calc(4px + 1vh)");
+
+    verifySerialization("calc(5px + 6em + 1vh)", "calc(6em + 5px + 1vh)", "testing calc(5px + 6em + 1vh)");
+
+    verifySerialization("calc(1vh - 7px)", "calc(-7px + 1vh)", "testing calc(1vh - 7px)");
+
+    verifySerialization("calc(-8px + 9em + 1vh)", "calc(9em - 8px + 1vh)", "testing calc(-8px + 9em + 1vh)");
+
+    verifySerialization("calc(1pc + 1in + 1vh + 10%)", "calc(10% + 112px + 1vh)", "testing calc(1pc + 1in + 1vh + 10%)");
+
+ /* verifySerialization(specified_value, serialization_expected, description)  */
+
+    verifySerialization("calc(25.4q + 1vh + 12%)", "calc(12% + 24px + 1vh)", "testing calc(25.4q + 1vh + 12%)");
+
+    verifySerialization("calc(1em + 1.27cm + 13% + 3em)", "calc(13% + 4em + 48px)", "testing calc(1em + 1.27cm + 13% + 3em)");
+
+    verifySerialization("calc(1vmin - 14%)", "calc(-14% + 1vmin)", "testing calc(1vmin - 14%)");
+
+    verifySerialization("calc(15vw + 16vmin - 17vh)", "calc(-17vh + 16vmin + 15vw)", "testing calc(15vw + 16vmin - 17vh)");
+
+    verifySerialization("calc(-80px + 25.4mm)", "calc(16px)", "testing calc(-80px + 25.4mm)");
+
+    /*
+    This calc(-80px + 25.4mm) test is on purpose last. We want the
+    div#target to occupy 16px and to not cause document box height
+    to be unneedlessly tall.
+    */
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization-expected.txt
new file mode 100644 (file)
index 0000000..e37e512
--- /dev/null
@@ -0,0 +1,3 @@
+
+FAIL calc() serialization assert_equals: Serialization of calc(10px + 1vmin + 10%) expected "calc(10% + 10px + 1vmin)" but got "calc((10px + 1vmin) + 10%)"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-serialization.html
new file mode 100644 (file)
index 0000000..f92de73
--- /dev/null
@@ -0,0 +1,29 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Values and Units: calc() serialization.</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@mozilla.com">
+<link rel="help" href="https://drafts.csswg.org/css-values/#calc-serialize">
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/1731">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div id="content"></div>
+<script>
+test(function() {
+  // specified -> expected
+  var values = {
+    "calc(10px + 1vmin + 10%)": "calc(10% + 10px + 1vmin)",
+    "calc(10px + 1vmin)": "calc(10px + 1vmin)",
+    "calc(10px + 1em)": "calc(1em + 10px)",
+    "calc(1vmin - 10px)": "calc(-10px + 1vmin)",
+    "calc(-10px + 1em)": "calc(1em - 10px)",
+    "calc(-10px)": "calc(-10px)",
+  };
+
+  var content = document.getElementById("content");
+
+  for (var prop in values) {
+    content.style.width = prop;
+    assert_equals(content.style.width, values[prop], "Serialization of " + prop);
+  }
+}, "calc() serialization")
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-time-values-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-time-values-expected.txt
new file mode 100644 (file)
index 0000000..fb5dff6
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS addition of 2 time units: s plus s 
+PASS addition of 2 time units: s plus ms 
+PASS addition of 2 time units: ms plus ms 
+PASS substraction of time unit: s minus s 
+PASS substraction of time unit: s minus ms 
+PASS multiplication of integer with a time unit: int multiplied by s 
+PASS multiplication of integer with a time unit: int multiplied by ms 
+PASS division of time unit with integer: s divided by int 
+PASS division of time unit with integer: ms divided by int 
+PASS conversion of time unit: ms into s 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-time-values.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-time-values.html
new file mode 100644 (file)
index 0000000..60bcdcb
--- /dev/null
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: calc() function with time values</title>
+
+  <!--
+
+  Original test is:
+
+  https://chromium.googlesource.com/chromium/src/+/c825d655f6aaf73484f9d56e9012793f5b9668cc/third_party/WebKit/LayoutTests/css3/calc/calc-with-time-angle-and-frequency-values.html
+
+  Issue 917718: [css-values] calc-with-time-angle-and-frequency-values
+  test is highly unreliable, transition-delay testing causes side effects
+  https://bugs.chromium.org/p/chromium/issues/detail?id=917718
+
+  -->
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#calc-computed-value">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#time">
+
+  <meta content="This test checks that additions, substractions, multiplications and divisions in calc() function when applied to time units." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="log"></div>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+    var targetElement = document.getElementById("target");
+
+    function compareValue(property_name, calcValue, expectedValue, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.setProperty(property_name, "inherit");
+
+      /*
+      Since we are running many consecutive tests on the same
+      element, then it is necessary to 'reset' its property
+      to an initial value before actually re-testing it.
+      */
+
+      targetElement.style.setProperty(property_name, calcValue);
+
+      var computedCalcValue = getComputedStyle(targetElement)[property_name];
+
+      targetElement.style.setProperty(property_name, expectedValue);
+
+      var computedExpectedValue = getComputedStyle(targetElement)[property_name];
+
+      assert_equals(computedCalcValue, computedExpectedValue);
+
+      }, description);
+
+    }
+
+
+    /* Testing time units  */
+
+ /* compareValue(property_name, calcValue, expectedValue, description)  */
+
+    compareValue("transition-delay", "calc(4s + 1s)", "5s", "addition of 2 time units: s plus s");
+
+    compareValue("transition-delay", "calc(4s + 1ms)", "4.001s", "addition of 2 time units: s plus ms");
+
+    compareValue("transition-delay", "calc(4ms + 1ms)", "0.005s", "addition of 2 time units: ms plus ms");
+
+    compareValue("transition-delay", "calc(4s - 1s)", "3s", "substraction of time unit: s minus s");
+
+    compareValue("transition-delay", "calc(4s - 1ms)", "3.999s", "substraction of time unit: s minus ms");
+
+    compareValue("transition-delay", "calc(4 * 1s)", "4s", "multiplication of integer with a time unit: int multiplied by s");
+
+    compareValue("transition-delay", "calc(4 * 1ms)", "0.004s", "multiplication of integer with a time unit: int multiplied by ms");
+
+    compareValue("transition-delay", "calc(4s / 2)", "2s", "division of time unit with integer: s divided by int");
+
+    compareValue("transition-delay", "calc(4ms / 2)", "0.002s", "division of time unit with integer: ms divided by int");
+
+ /* compareValue(property_name, calcValue, expectedValue, description)  */
+
+
+
+  /* Testing conversion of time unit  */
+
+ /* compareValue(property_name, calcValue, expectedValue, description)  */
+
+    compareValue("transition-delay", "calc(4000ms)", "4s", "conversion of time unit: ms into s");
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-unit-analysis-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-unit-analysis-expected.txt
new file mode 100644 (file)
index 0000000..8379215
--- /dev/null
@@ -0,0 +1,11 @@
+
+PASS unitless_zero_in_calc_is_a_numeric_type_not_length 
+PASS 0px_in_calc 
+PASS addition_of_length_and_number 
+PASS addition_of_number_and_length 
+PASS subtraction_of_length_and_number 
+PASS subtraction_of_number_and_length 
+PASS multiplication_of_length_and_number 
+PASS multiplication_of_number_and_length 
+PASS multiplication_of_length_and_length 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-unit-analysis.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-unit-analysis.html
new file mode 100644 (file)
index 0000000..7508a39
--- /dev/null
@@ -0,0 +1,76 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+  <title>CSS Variables Allowed Syntax</title>
+  <link rel="author" title="L. David Baron" href="https://dbaron.org/">
+  <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" />
+  <link rel="help" href="http://www.w3.org/TR/css3-values/#lengths" />
+  <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-type-checking" />
+  <script src="/resources/testharness.js"></script>
+  <script src="/resources/testharnessreport.js"></script>
+<style id="style"></style>
+</head>
+<body>
+<div id=log></div>
+<div id="test"></div>
+<script>
+
+function run() {
+  var test_elt = document.getElementById("test");
+  var test_cs = window.getComputedStyle(test_elt, "");
+
+  function description_to_name(description) {
+    return description.replace(/\W+/g, "_").replace(/^_/, "").replace(/_$/, "");
+  }
+
+  function assert_invalid_value(property, value, description) {
+    test(function() {
+           test_elt.style.setProperty(property, "inherit");
+           test_elt.style.setProperty(property, value);
+           assert_equals(test_elt.style.getPropertyValue(property),
+                         "inherit");
+           test_elt.style.setProperty(property, value);
+           test_elt.style.removeProperty(property);
+         },
+         description_to_name(description));
+  }
+
+  function assert_valid_value(property, value, computes_to, description) {
+    test(function() {
+           test_elt.style.setProperty(property, "inherit");
+           test_elt.style.setProperty(property, value);
+           assert_not_equals(test_elt.style.getPropertyValue(property),
+                             "inherit");
+           assert_equals(test_cs.getPropertyValue(property),
+                         computes_to);
+           test_elt.style.removeProperty(property);
+         },
+         description_to_name(description));
+  }
+
+  assert_invalid_value("margin-left", "calc(0)", // invalid calc expression
+                       "unitless zero in calc() is a numeric type, not length");
+  assert_valid_value("margin-left", "calc(0px)", "0px",
+                     "0px in calc()");
+  assert_invalid_value("margin-left", "calc(1px + 2)", // invalid calc expression
+                       "addition of length and number");
+  assert_invalid_value("margin-left", "calc(2 + 1px)", // invalid calc expression
+                       "addition of number and length");
+  assert_invalid_value("margin-left", "calc(1px - 2)", // invalid calc expression
+                       "subtraction of length and number");
+  assert_invalid_value("margin-left", "calc(2 - 1px)", // invalid calc expression
+                       "subtraction of number and length");
+  assert_valid_value("margin-left", "calc(2px * 2)", "4px",
+                     "multiplication of length and number");
+  assert_valid_value("margin-left", "calc(2 * 2px)", "4px",
+                     "multiplication of number and length");
+  assert_invalid_value("margin-left", "calc(2px * 1px)", // invalid calc expression
+                       "multiplication of length and length");
+
+}
+
+run();
+
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-z-index-fractions-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-z-index-fractions-001-expected.txt
new file mode 100644 (file)
index 0000000..995af08
--- /dev/null
@@ -0,0 +1,4 @@
+
+FAIL testing z-index: calc(3 / 2) assert_equals: expected "2" but got "auto"
+FAIL testing z-index: calc(-3 / 2) assert_equals: expected "-1" but got "auto"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-z-index-fractions-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-z-index-fractions-001.html
new file mode 100644 (file)
index 0000000..6b8ed24
--- /dev/null
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: computed value of 'z-index' when specified with calc() function and fractional values</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-4/#calc-range">
+
+  <meta name="flags" content="">
+  <meta content="This test verifies how 2 calc() functions are computed for 'z-index' when involved expressions end up being numbers halfway between adjacent integers." name="assert">
+
+  <script src="/resources/testharness.js"></script>
+
+  <script src="/resources/testharnessreport.js"></script>
+
+  <div id="target"></div>
+
+  <script>
+  function startTesting()
+  {
+
+  var targetElement = document.getElementById("target");
+
+    function verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description)
+    {
+
+    test(function()
+      {
+
+      targetElement.style.setProperty(property_name, initial_value);
+
+      /*
+      The purpose of the initial_value is to act as a fallback
+      value in case the calc() function in the specified value
+      fails or in case it generates an invalid value. Since we
+      are running 2 consecutive tests on the same element,
+      then it is necessary to reset its property to an initial
+      value.
+      */
+
+      targetElement.style.setProperty(property_name, specified_value);
+
+      assert_equals(getComputedStyle(targetElement)[property_name], expected_value);
+
+      }, description);
+    }
+
+ /* verifyComputedStyle(property_name, initial_value, specified_value, expected_value, description) */
+
+    verifyComputedStyle("z-index", "auto", "calc(3 / 2)", "2", "testing z-index: calc(3 / 2)");
+
+    verifyComputedStyle("z-index", "auto", "calc(-3 / 2)", "-1", "testing z-index: calc(-3 / 2)");
+
+  }
+
+  startTesting();
+
+  </script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-zero-percent-height-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-zero-percent-height-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-zero-percent-height.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-zero-percent-height.html
new file mode 100644 (file)
index 0000000..ffb2ecd
--- /dev/null
@@ -0,0 +1,30 @@
+<!doctype html>
+<link rel="help" href="https://www.w3.org/TR/css-values-4/#calc-computed-value">
+<link rel="help" href="https://www.w3.org/TR/CSS2/visudet.html#the-height-property">
+<link rel="author" title="Xiaocheng Hu" href="mailto:xiaochengh@chromium.org">
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<title>0% in calc() should be preserved</title>
+<script>
+CSS.registerProperty({
+  name: '--custom-height',
+  syntax: '<length-percentage>',
+  initialValue: 'calc(0% + 0px)',
+  inherits: false
+});
+</script>
+<style>
+.height-filler {
+  height: 100px;
+}
+
+.test {
+  width: 100px;
+  height: var(--custom-height);
+  background-color: green;
+}
+</style>
+<p>Test passes if there is a filled green square.</p>
+<div class="test">
+  <div class="height-filler">
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-001-expected.html
new file mode 100644 (file)
index 0000000..163ad8e
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+svg { width: 10ch; }
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <svg viewBox="0 0 100 100"><rect x="0" y="0" width="100" height="100" fill="green"></svg>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-001.html
new file mode 100644 (file)
index 0000000..83374e7
--- /dev/null
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<meta name="flags" content="">
+<link rel="match" href="reference/ch-unit-001-ref.html">
+<meta name="assert" content="The ch unit is equal to the used advance measure of the 0 (ZERO, U+0030) glyph found in the font used to render it.">
+<style>
+span {
+    background: green;
+    color: green;
+    top: 0; bottom: 0;
+    position: absolute;
+}
+div {
+    background: red;
+    color: red;
+    position: relative;
+    height: 10ch;
+    width: 5ch;
+    float: left;
+}
+
+div + div {
+    width: auto;
+}
+
+div + div span {
+    width: 5ch;
+}
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <div><span>00000</span></div>
+    <div><span></span>00000</div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-002-expected.html
new file mode 100644 (file)
index 0000000..ee6ce15
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+svg {
+    width: 10ch;
+    writing-mode: vertical-rl;
+    text-orientation: upright;
+}
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <svg viewBox="0 0 100 100"><rect x="0" y="0" width="100" height="100" fill="green"></svg>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-002.html
new file mode 100644 (file)
index 0000000..0f4fcb3
--- /dev/null
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: the ch unit in vertical orientation</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="help" href="https://www.w3.org/TR/css-writing-modes-3/#block-flow">
+<link rel="help" href="https://www.w3.org/TR/css-writing-modes-3/#text-orientation">
+<link rel="match" href="reference/ch-unit-002-ref.html">
+<meta name="assert" content="In vertical upright, the ch unit is equal to the used vertical advance measure of the 0 (ZERO, U+0030) glyph found in the font used to render it.">
+<style>
+span {
+    background: green;
+    color: green;
+    left: 0; right: 0;
+    position: absolute;
+}
+div {
+    background: red;
+    color: red;
+    position: relative;
+    height: 5ch;
+    width: 10ch;
+    writing-mode: vertical-rl;
+    text-orientation: upright;
+}
+
+div + div {
+    height: auto;
+}
+
+div + div span {
+    height: 5ch;
+}
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <div><span>00000</span></div>
+    <div><span></span>00000</div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-003-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-003-expected.html
new file mode 100644 (file)
index 0000000..163ad8e
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+svg { width: 10ch; }
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <svg viewBox="0 0 100 100"><rect x="0" y="0" width="100" height="100" fill="green"></svg>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-003.html
new file mode 100644 (file)
index 0000000..ee1e7cc
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<meta name="flags" content="">
+<link rel="match" href="reference/ch-unit-001-ref.html">
+<meta name="assert" content="In vertical mixed, The ch unit is equal to the used horizontal advance measure of the 0 (ZERO, U+0030) glyph found in the font used to render it.">
+<style>
+span {
+    background: green;
+    color: green;
+    left: 0; right: 0;
+    position: absolute;
+}
+div {
+    background: red;
+    color: red;
+    position: relative;
+    height: 5ch;
+    width: 10ch;
+    writing-mode: vertical-rl;
+    text-orientation: mixed;
+}
+
+div + div {
+    height: auto;
+}
+
+div + div span {
+    height: 5ch;
+}
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <div><span>00000</span></div>
+    <div><span></span>00000</div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-004-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-004-expected.html
new file mode 100644 (file)
index 0000000..163ad8e
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+svg { width: 10ch; }
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <svg viewBox="0 0 100 100"><rect x="0" y="0" width="100" height="100" fill="green"></svg>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-004.html
new file mode 100644 (file)
index 0000000..914cec9
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<meta name="flags" content="">
+<link rel="match" href="reference/ch-unit-001-ref.html">
+<meta name="assert" content="In vertical sideways, The ch unit is equal to the used horizontal advance measure of the 0 (ZERO, U+0030) glyph found in the font used to render it.">
+<style>
+span {
+    background: green;
+    color: green;
+    left: 0; right: 0;
+    position: absolute;
+}
+div {
+    background: red;
+    color: red;
+    position: relative;
+    height: 5ch;
+    width: 10ch;
+    writing-mode: vertical-rl;
+    text-orientation: sideways;
+}
+
+div + div {
+    height: auto;
+}
+
+div + div span {
+    height: 5ch;
+}
+</style>
+<body>
+    <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+    <div><span>00000</span></div>
+    <div><span></span>00000</div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-008-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-008-expected.html
new file mode 100644 (file)
index 0000000..678a9c1
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test Reference File</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      line-height: 1.8; /* arbitrary line-height */
+    }
+
+  div#blue
+    {
+      background-color: blue;
+      color: blue;
+    }
+
+  div#orange
+    {
+      background-color: orange;
+      color: orange;
+      clear: left;
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same width</strong> as an orange rectangle.
+
+  <div id="blue">00000</div>
+
+  <div id="orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-008.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-008.html
new file mode 100644 (file)
index 0000000..67fe075
--- /dev/null
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: ch unit in width (basic)</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#font-relative-lengths">
+  <link rel="match" href="reference/ch-unit-008-ref.html">
+
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      font-size: 80px; /* arbitrary font size */
+    }
+
+  div#test-blue
+    {
+      background-color: blue;
+      height: 1.8em;
+      width: 5ch;
+    }
+
+  div#reference-orange
+    {
+      background-color: orange;
+      color: orange;
+      float: left;
+      line-height: 1.8; /* arbitrary line-height */
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same width</strong> as an orange rectangle.
+
+  <div id="test-blue"></div>
+
+  <div id="reference-orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-009-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-009-expected.html
new file mode 100644 (file)
index 0000000..6bd69be
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test Reference File</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      line-height: 1.8; /* arbitrary line-height */
+      writing-mode: vertical-rl;
+    }
+
+  div#blue
+    {
+      background-color: blue;
+      color: blue;
+    }
+
+  div#orange
+    {
+      background-color: orange;
+      color: orange;
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="blue">00000</div>
+
+  <div id="orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-009.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-009.html
new file mode 100644 (file)
index 0000000..c6f5671
--- /dev/null
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: ch unit in height (basic)</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#font-relative-lengths">
+  <link rel="match" href="reference/ch-unit-009-ref.html">
+
+  <meta name="flags" content="">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+    }
+
+  div#test-blue
+    {
+      background-color: blue;
+      height: 5ch;
+      width: 1.8em;
+    }
+
+  div#reference-orange
+    {
+      background-color: orange;
+      color: orange;
+      line-height: 1.8; /* arbitrary line-height */
+      writing-mode: vertical-rl;
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="test-blue"></div>
+
+  <div id="reference-orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-010-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-010-expected.html
new file mode 100644 (file)
index 0000000..6bd69be
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test Reference File</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      line-height: 1.8; /* arbitrary line-height */
+      writing-mode: vertical-rl;
+    }
+
+  div#blue
+    {
+      background-color: blue;
+      color: blue;
+    }
+
+  div#orange
+    {
+      background-color: orange;
+      color: orange;
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="blue">00000</div>
+
+  <div id="orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-010.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-010.html
new file mode 100644 (file)
index 0000000..bc3fdbc
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: ch unit in height with 'text-orientation: mixed'</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#font-relative-lengths">
+  <link rel="match" href="reference/ch-unit-009-ref.html">
+
+  <meta name="flags" content="">
+  <meta name="assert" content="In this test, the ch unit is the advance width measure of the 0 (ZERO, U+0030) glyph.">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      text-orientation: mixed;
+      writing-mode: vertical-rl;
+    }
+
+  div#test-blue
+    {
+      background-color: blue;
+      height: 5ch;
+      width: 1.8em;
+    }
+
+  div#reference-orange
+    {
+      background-color: orange;
+      color: orange;
+      line-height: 1.8; /* arbitrary line-height */
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="test-blue"></div>
+
+  <div id="reference-orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-011-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-011-expected.html
new file mode 100644 (file)
index 0000000..78b484f
--- /dev/null
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test Reference File</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      line-height: 1.8; /* arbitrary line-height */
+      text-orientation: upright;
+      writing-mode: vertical-rl;
+    }
+
+  div#blue
+    {
+      background-color: blue;
+      color: blue;
+    }
+
+  div#orange
+    {
+      background-color: orange;
+      color: orange;
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="blue">00000</div>
+
+  <div id="orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-011.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-011.html
new file mode 100644 (file)
index 0000000..c486f0c
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: ch unit in height with 'text-orientation: upright'</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#font-relative-lengths">
+  <link rel="match" href="reference/ch-unit-011-ref.html">
+
+  <meta name="flags" content="">
+  <meta name="assert" content="In this test, the ch unit is the advance height measure of the 0 (ZERO, U+0030) glyph.">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      text-orientation: upright;
+      writing-mode: vertical-rl;
+    }
+
+  div#test-blue
+    {
+      background-color: blue;
+      height: 5ch;
+      width: 1.8em;
+    }
+
+  div#reference-orange
+    {
+      background-color: orange;
+      color: orange;
+      line-height: 1.8; /* arbitrary line-height */
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="test-blue"></div>
+
+  <div id="reference-orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-012-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-012-expected.html
new file mode 100644 (file)
index 0000000..6bd69be
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test Reference File</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      line-height: 1.8; /* arbitrary line-height */
+      writing-mode: vertical-rl;
+    }
+
+  div#blue
+    {
+      background-color: blue;
+      color: blue;
+    }
+
+  div#orange
+    {
+      background-color: orange;
+      color: orange;
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="blue">00000</div>
+
+  <div id="orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-012.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-012.html
new file mode 100644 (file)
index 0000000..b844d9b
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+
+  <meta charset="UTF-8">
+
+  <title>CSS Values and Units Test: ch unit in height with 'text-orientation: sideways'</title>
+
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+  <link rel="help" href="https://www.w3.org/TR/css-values-3/#font-relative-lengths">
+  <link rel="match" href="reference/ch-unit-009-ref.html">
+
+  <meta name="flags" content="">
+  <meta name="assert" content="In this test, the ch unit is the advance width measure of the 0 (ZERO, U+0030) glyph.">
+
+  <style>
+  div
+    {
+      float: left;
+      font-size: 80px; /* arbitrary font size */
+      text-orientation: sideways;
+      writing-mode: vertical-rl;
+    }
+
+  div#test-blue
+    {
+      background-color: blue;
+      height: 5ch;
+      width: 1.8em;
+    }
+
+  div#reference-orange
+    {
+      background-color: orange;
+      color: orange;
+      line-height: 1.8; /* arbitrary line-height */
+    }
+  </style>
+
+  <p>Test passes if there is a blue rectangle with the <strong>same height</strong> as an orange rectangle.
+
+  <div id="test-blue"></div>
+
+  <div id="reference-orange">00000</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-013-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-013-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-013.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-013.html
new file mode 100644 (file)
index 0000000..c5782f1
--- /dev/null
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ch-unit-013-ref.html">
+<meta name="assert" content="When a zero glyph is not present, in horizontal writing modes the ch unit falls back to 0.5em.">
+<style>
+@font-face {
+  font-family: ChTestNoZero;
+  src: url(resources/ChTestNoZero.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  width: 5ch;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ChTestNoZero has no '0' glyph, so ch units should compute to 0.5em,
+     resulting in the div being 100px wide. -->
+<div class="test" style="font: 40px ChTestNoZero;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-014-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-014-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-014.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-014.html
new file mode 100644 (file)
index 0000000..a8a04c8
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ch-unit-013-ref.html">
+<meta name="assert" content="When a zero glyph is not present, in vertical mixed writing modes the ch unit falls back to 0.5em.">
+<style>
+@font-face {
+  font-family: ChTestNoZero;
+  src: url(resources/ChTestNoZero.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  writing-mode: vertical-rl;
+  width: 5ch;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ChTestNoZero has no '0' glyph, so ch units should compute to 0.5em,
+     resulting in the div being 100px wide. -->
+<div class="test" style="font: 40px ChTestNoZero;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-015-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-015-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-015.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-015.html
new file mode 100644 (file)
index 0000000..e098e3f
--- /dev/null
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ch-unit-013-ref.html">
+<meta name="assert" content="When a zero glyph is not present, in vertical upright writing modes the ch unit falls back to 1em.">
+<style>
+@font-face {
+  font-family: ChTestNoZero;
+  src: url(resources/ChTestNoZero.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  writing-mode: vertical-rl;
+  text-orientation: upright;
+  width: 5ch;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ChTestNoZero has no '0' glyph, and we have a vertical writing mode
+     with upright glyphs, so ch units should compute to 1em, resulting in
+     the div being 100px wide. -->
+<div class="test" style="font: 20px ChTestNoZero;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-016-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-016-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-016.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-016.html
new file mode 100644 (file)
index 0000000..1a61e15
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ch-unit-013-ref.html">
+<meta name="assert" content="The ch unit is equal to 0em if the zero glyph's advance is 0.">
+<style>
+@font-face {
+  font-family: ChTestZeroWidthZero;
+  src: url(resources/ChTestZeroWidthZero.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  width: calc(100px + 5ch);
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- The '0' glyph in ChTestZeroWidthZero has a horizontal advance of
+     zero, so ch units should compute to 0em, resulting in the div being
+     100px wide. -->
+<div class="test" style="font: 20px ChTestZeroWidthZero;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-017-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-017-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-017.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-017.html
new file mode 100644 (file)
index 0000000..a52c978
--- /dev/null
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ch-unit-013-ref.html">
+<meta name="assert" content="In vertical upright writing modes, the ch unit is equal to the vertical advance of the zero glyph.">
+<style>
+@font-face {
+  font-family: ChTestShortZero;
+  src: url(resources/ChTestShortZero.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  writing-mode: vertical-rl;
+  text-orientation: upright;
+  width: 5ch;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ChTestShortZero has a '0' glyph whose vertical advance is a quarter
+     of the units per em, so ch units in vertical upright writing modes
+     should compute to 0.25em, resulting in the div being 100px width. -->
+<div class="test" style="font: 80px ChTestShortZero;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-018-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-018-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-018.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ch-unit-018.html
new file mode 100644 (file)
index 0000000..fee5e92
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ch unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ch-unit-013-ref.html">
+<meta name="assert" content="When a zero glyph is not present, in horizontal writing modes and with text-orientation set to upright, the ch unit falls back to 0.5em.">
+<style>
+@font-face {
+  font-family: ChTestNoZero;
+  src: url(resources/ChTestNoZero.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  text-orientation: upright;
+  width: 5ch;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ChTestNoZero has no '0' glyph, so ch units should compute to 0.5em,
+     resulting in the div being 100px wide. -->
+<div class="test" style="font: 40px ChTestNoZero;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-computed-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-computed-expected.txt
new file mode 100644 (file)
index 0000000..b6be441
--- /dev/null
@@ -0,0 +1,6 @@
+
+FAIL Property letter-spacing value 'clamp(10px, 20px, 30px)' computes to '20px' assert_equals: expected "20px" but got "normal"
+FAIL Property letter-spacing value 'clamp(10px, 5px, 30px)' computes to '10px' assert_equals: expected "10px" but got "normal"
+FAIL Property letter-spacing value 'clamp(10px, 35px, 30px)' computes to '30px' assert_equals: expected "30px" but got "normal"
+FAIL Property letter-spacing value 'clamp(30px, 100px, 20px)' computes to '30px' assert_equals: expected "30px" but got "normal"
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-computed.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-computed.html
new file mode 100644 (file)
index 0000000..67dc19a
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-values-4/#comp-func">
+<link rel="author" title="Xiaocheng Hu" href="mailto:xiaochengh@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="../support/computed-testcommon.js"></script>
+<div id="container" style="font-size: 20px">
+  <div id="target"></div>
+  <div id="reference"></div>
+</div>
+<script>
+const property = 'letter-spacing';
+
+function test_length_equals(value, expected) {
+  const reference = document.getElementById('reference');
+  reference.style[property] = '';
+  reference.style[property] = expected;
+  const computed = getComputedStyle(reference)[property];
+  test_computed_value(property, value, computed);
+}
+
+test_length_equals('clamp(10px, 20px, 30px)', '20px');
+test_length_equals('clamp(10px, 5px, 30px)', '10px');
+test_length_equals('clamp(10px, 35px, 30px)', '30px');
+
+// clamp(MIN, VAL, MAX) is identical to max(MIN, min(VAL, MAX)),
+// so MIN wins over MAX if they are in the wrong order.
+test_length_equals('clamp(30px, 100px, 20px)', '30px');
+
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-invalid-expected.txt
new file mode 100644 (file)
index 0000000..5176187
--- /dev/null
@@ -0,0 +1,13 @@
+
+PASS e.style['letter-spacing'] = "clamp()" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp( )" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(,)" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(1px, )" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(, 1px)" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(1px, 1px)" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(1px, , 1px)" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(, 1px, 1px)" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(1px, 1px, )" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(1px, 1px, 1px, )" should not set the property value 
+PASS e.style['letter-spacing'] = "clamp(1px 1px 1px)" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-invalid.html
new file mode 100644 (file)
index 0000000..68c298b
--- /dev/null
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-values-4/#comp-func">
+<link rel="author" title="Xiaocheng Hu" href="mailto:xiaochengh@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="../support/parsing-testcommon.js"></script>
+<script>
+function test_invalid_length(value) {
+  test_invalid_value('letter-spacing', value);
+}
+
+test_invalid_length('clamp()');
+test_invalid_length('clamp( )');
+test_invalid_length('clamp(,)');
+test_invalid_length('clamp(1px, )');
+test_invalid_length('clamp(, 1px)');
+test_invalid_length('clamp(1px, 1px)');
+test_invalid_length('clamp(1px, , 1px)');
+test_invalid_length('clamp(, 1px, 1px)');
+test_invalid_length('clamp(1px, 1px, )');
+test_invalid_length('clamp(1px, 1px, 1px, )');
+test_invalid_length('clamp(1px 1px 1px)');
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize-expected.txt
new file mode 100644 (file)
index 0000000..748f1d6
--- /dev/null
@@ -0,0 +1,4 @@
+
+FAIL e.style['letter-spacing'] = "clamp(1px, 2px, 3px)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['letter-spacing'] = "clamp(1px, 2px, clamp(2px, 3px, 4px))" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize.html
new file mode 100644 (file)
index 0000000..4719e4c
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-values-4/#comp-func">
+<link rel="author" title="Xiaocheng Hu" href="mailto:xiaochengh@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="../support/parsing-testcommon.js"></script>
+<script>
+function test_valid_length(value, expected) {
+  test_valid_value('letter-spacing', value, expected);
+}
+
+test_valid_length('clamp(1px, 2px, 3px)', 'clamp(1px, 2px, 3px)');
+test_valid_length('clamp(1px, 2px, clamp(2px, 3px, 4px))', 'clamp(1px, 2px, clamp(2px, 3px, 4px))');
+
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-calc-expression-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-calc-expression-001-expected.html
new file mode 100644 (file)
index 0000000..888a51e
--- /dev/null
@@ -0,0 +1,11 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<style>
+div {
+  width: 2ex;
+  height: 2ex;
+  background: green;
+}
+</style>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-calc-expression-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-calc-expression-001.html
new file mode 100644 (file)
index 0000000..4eab829
--- /dev/null
@@ -0,0 +1,19 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test: Calc expression using multiple ex operands</title>
+<link rel="match" href="ex-calc-expression-001-ref.html">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<style>
+/*
+   This is a regression test for:
+     https://github.com/servo/servo/pull/18807
+     https://bugzilla.mozilla.org/show_bug.cgi?id=1407092
+ */
+div {
+  width: calc(1ex + 1ex);
+  height: calc(1ex + 1ex);
+  background: green;
+}
+</style>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-001-expected.html
new file mode 100644 (file)
index 0000000..daf375e
--- /dev/null
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Test Reference</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<meta name="flags" content="ahem">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  div {
+    font-family: Arial, sans-serif;
+    font-weight: 900;
+    width: 10ex;
+    height: 20px;
+    background: blue;
+    margin: 20px;
+    font-size: 20px;
+  }
+</style>
+<p>All lines except the first should be the same length</p>
+<div style="font-family: Ahem; font-weight: normal;"></div>
+<div></div>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-001.html
new file mode 100644 (file)
index 0000000..eff0dbe
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: ex unit computation and dependencies</title>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="author" title="Mozilla" href="https://mozilla.org">
+<link rel="help" href="https://drafts.csswg.org/css-values/#font-relative-lengths">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1529537">
+<link rel="match" href="reference/ex-unit-001-ref.html">
+<meta name="flags" content="ahem">
+<style>
+  @font-face {
+    font-family: foo;
+    src: url('/fonts/Ahem.ttf');
+  }
+
+  @font-face {
+    font-family: foo;
+    font-weight: 900;
+    /* It doesn't really matter if Arial is not found, as
+       long as we fall-back to a font with different metrics
+       than Ahem */
+    src: local(Arial);
+  }
+
+  div {
+    font-family: foo, sans-serif;
+    width: 10ex;
+    height: 20px;
+    background: blue;
+    margin: 20px;
+    font-size: 20px;
+  }
+</style>
+<p>All lines except the first should be the same length</p>
+<div></div>
+<div style="font-weight: 900"></div>
+<div style="font-weight: 900; width: 10ex;"></div>
+<section style="font-weight: 900"><div></div></section>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-002-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-002.html
new file mode 100644 (file)
index 0000000..a0293cf
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ex unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ex-unit-002-ref.html">
+<meta name="assert" content="The ex unit equals the x-height of the first available font if it has reliable metrics for the x-height.">
+<style>
+@font-face {
+  font-family: ExTest;
+  src: url(resources/ExTest.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  width: 10ex;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ExTest is a font whose OS/2 table's sxHeight field is set to an
+     eighth of the font's units per em, so ex units should compute to
+     0.125em, resulting in the div being 100px wide. -->
+<div class="test" style="font: 80px ExTest;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-003-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-003-expected.html
new file mode 100644 (file)
index 0000000..74e304b
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test Reference File</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<style>
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<div></div>
+<div></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/ex-unit-003.html
new file mode 100644 (file)
index 0000000..67bb0c6
--- /dev/null
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Values and Units Test: support for the ex unit</title>
+<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#font-relative-lengths">
+<link rel="match" href="reference/ex-unit-002-ref.html">
+<meta name="assert" content="Even in vertical writing modes, the ex unit equals the x-height of the first available font if it has reliable metrics for the x-height.">
+<style>
+@font-face {
+  font-family: ExTest;
+  src: url(resources/ExTest.woff);
+}
+div {
+  height: 10px;
+  background-color: blue;
+  margin-top: 10px;
+}
+.test {
+  writing-mode: vertical-rl;
+  width: 10ex;
+}
+.ref {
+  width: 100px;
+}
+</style>
+<p>The test passes if there are two blue rectangles of equal length.</p>
+<!-- ExTest is a font whose OS/2 table's sxHeight field is set to an
+     eighth of the font's units per em, so ex units should compute to
+     0.125em, resulting in the div being 100px wide. -->
+<div class="test" style="font: 80px ExTest;"></div>
+<div class="ref"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-values/getComputedStyle-border-radius-001-expected.txt
new file mode 100644 (file)
index 0000000..f76909c
--- /dev/null
@@ -0,0 +1,7 @@
+
+FAIL testing border-top-left-radius: calc(10px +