1 This is a testharness.js-based test.
2 PASS "transform: initial;" should parse as "initial"
3 PASS "transform: initial;" should be computed to "none"
4 PASS "transform: inherit;" should parse as "inherit"
5 PASS "transform: 0;" should be invalid
6 PASS "transform: none;" should parse as "none"
7 PASS "transform: none none;" should be invalid
8 PASS "transform: translateX(10px) scale(2);" should parse as "translateX(10px) scale(2)"
9 PASS "transform: matrix(0, 1, 2, 3, 4, 5);" should parse as "matrix(0, 1, 2, 3, 4, 5)"
10 PASS "transform: matrix(0, 1, 2, 3, 4, 5);" should be computed to "matrix(0, 1, 2, 3, 4, 5)"
11 PASS "transform: matrix();" should be invalid
12 PASS "transform: matrix(0, 1, 2, 3, 4);" should be invalid
13 PASS "transform: matrix(1px, 1, 2, 3, 4, 5);" should be invalid
14 PASS "transform: translate(0);" should parse as "translate(0px)"
15 PASS "transform: translate(0, 0);" should parse as "translate(0px, 0px)"
16 PASS "transform: translate(1px, 2px);" should parse as "translate(1px, 2px)"
17 PASS "transform: translate(1px, 2px);" should be computed to "matrix(1, 0, 0, 1, 1, 2)"
18 PASS "transform: translate(1px);" should parse as "translate(1px)"
19 PASS "transform: translate(20%, 10%);" should parse as "translate(20%, 10%)"
20 PASS "transform: translate(20%, 10%);" should be computed to "matrix(1, 0, 0, 1, 40, 10)"
21 PASS "transform: translate();" should be invalid
22 PASS "transform: translate(1);" should be invalid
23 PASS "transform: translate(1, 2);" should be invalid
24 PASS "transform: translate(1px, 2px, 3px);" should be invalid
25 PASS "transform: translateX(0);" should parse as "translateX(0px)"
26 PASS "transform: translateX(2px);" should parse as "translateX(2px)"
27 PASS "transform: translateX(2px);" should be computed to "matrix(1, 0, 0, 1, 2, 0)"
28 PASS "transform: translateX(50%);" should parse as "translateX(50%)"
29 PASS "transform: translateX(1);" should be invalid
30 PASS "transform: translateX();" should be invalid
31 PASS "transform: translateX(1px, 2px);" should be invalid
32 PASS "transform: translateY(0);" should parse as "translateY(0px)"
33 PASS "transform: translateY(2px);" should parse as "translateY(2px)"
34 PASS "transform: translateY(2px);" should be computed to "matrix(1, 0, 0, 1, 0, 2)"
35 PASS "transform: translateY(50%);" should parse as "translateY(50%)"
36 PASS "transform: translateY(1);" should be invalid
37 PASS "transform: translateY();" should be invalid
38 PASS "transform: translateY(1px, 2px);" should be invalid
39 PASS "transform: scale(1);" should parse as "scale(1)"
40 PASS "transform: scale(2, 3);" should parse as "scale(2, 3)"
41 PASS "transform: scale(2, 3);" should be computed to "matrix(2, 0, 0, 3, 0, 0)"
42 PASS "transform: scale();" should be invalid
43 PASS "transform: scale(1, 2, 3);" should be invalid
44 PASS "transform: scale(1px, 2px);" should be invalid
45 PASS "transform: scale(20%, 50%);" should be invalid
46 PASS "transform: scaleX(2);" should parse as "scaleX(2)"
47 PASS "transform: scaleX(2);" should be computed to "matrix(2, 0, 0, 1, 0, 0)"
48 PASS "transform: scaleX();" should be invalid
49 PASS "transform: scaleX(1, 2);" should be invalid
50 PASS "transform: scaleX(1px);" should be invalid
51 PASS "transform: scaleX(50%);" should be invalid
52 PASS "transform: scaleY(2);" should parse as "scaleY(2)"
53 PASS "transform: scaleY(2);" should be computed to "matrix(1, 0, 0, 2, 0, 0)"
54 PASS "transform: scaleY();" should be invalid
55 PASS "transform: scaleY(1, 2);" should be invalid
56 PASS "transform: scaleY(1px);" should be invalid
57 PASS "transform: scaleY(50%);" should be invalid
58 PASS "transform: rotate(0);" should parse as "rotate(0deg)"
59 PASS "transform: rotate(1deg);" should parse as "rotate(1deg)"
60 PASS "transform: rotate(2grad);" should parse as "rotate(2grad)"
61 PASS "transform: rotate(3rad);" should parse as "rotate(3rad)"
62 PASS "transform: rotate(4turn);" should parse as "rotate(4turn)"
63 PASS "transform: rotate(5px);" should be invalid
64 PASS "transform: rotate(6%);" should be invalid
65 PASS "transform: rotate(7);" should be invalid
66 PASS "transform: rotate(1deg, 1deg);" should be invalid
67 PASS "transform: rotate();" should be invalid
68 PASS "transform: skew(0);" should parse as "skew(0deg)"
69 PASS "transform: skew(45deg);" should parse as "skew(45deg)"
70 PASS "transform: skew(10rad, 20turn);" should parse as "skew(10rad, 20turn)"
71 PASS "transform: skew(0, 0);" should parse as "skew(0deg, 0deg)"
72 PASS "transform: skew(1);" should be invalid
73 PASS "transform: skew(2%);" should be invalid
74 PASS "transform: skew();" should be invalid
75 PASS "transform: skew(1deg, 2deg, 3deg);" should be invalid
76 PASS "transform: skewX(0);" should parse as "skewX(0deg)"
77 PASS "transform: skewX(45deg);" should parse as "skewX(45deg)"
78 PASS "transform: skewX(1);" should be invalid
79 PASS "transform: skewX(2%);" should be invalid
80 PASS "transform: skewX();" should be invalid
81 PASS "transform: skewX(1deg, 2deg);" should be invalid
82 PASS "transform: skewY(0);" should parse as "skewY(0deg)"
83 PASS "transform: skewY(45deg);" should parse as "skewY(45deg)"
84 PASS "transform: skewY(1);" should be invalid
85 PASS "transform: skewY(2%);" should be invalid
86 PASS "transform: skewY();" should be invalid
87 PASS "transform: skewY(1deg, 2deg);" should be invalid
88 PASS "transform: matrix3d(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);" should parse as "matrix3d(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)"
89 PASS "transform: matrix3d(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);" should be computed to "matrix3d(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)"
90 PASS "transform: matrix3d(0);" should be invalid
91 PASS "transform: matrix3d();" should be invalid
92 PASS "transform: matrix3d(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14);" should be invalid
93 PASS "transform: matrix3d(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16);" should be invalid
94 PASS "transform: matrix3d(1px, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);" should be invalid
95 PASS "transform: matrix3d(1%, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);" should be invalid
96 PASS "transform: translate3d(0, 0, 0);" should parse as "translate3d(0px, 0px, 0px)"
97 PASS "transform: translate3d(2px, 3px, 4px);" should parse as "translate3d(2px, 3px, 4px)"
98 PASS "transform: translate3d(2px, 3px, 4px);" should be computed to "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 4, 1)"
99 PASS "transform: translate3d();" should be invalid
100 PASS "transform: translate3d(1px, 2px);" should be invalid
101 PASS "transform: translate3d(1px, 2px, 3px, 4px);" should be invalid
102 PASS "transform: translate3d(1, 1, 1px);" should be invalid
103 PASS "transform: translate3d(1, 1, 1);" should be invalid
104 PASS "transform: translateZ(0);" should parse as "translateZ(0px)"
105 PASS "transform: translateZ(2px);" should parse as "translateZ(2px)"
106 PASS "transform: translateZ(2px);" should be computed to "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 2, 1)"
107 PASS "transform: translateZ();" should be invalid
108 PASS "transform: translateZ(1);" should be invalid
109 PASS "transform: translateZ(50%);" should be invalid
110 PASS "transform: translateZ(1px, 2px);" should be invalid
111 PASS "transform: scale3d(2, 3, 4);" should parse as "scale3d(2, 3, 4)"
112 PASS "transform: scale3d(2, 3, 4);" should be computed to "matrix3d(2, 0, 0, 0, 0, 3, 0, 0, 0, 0, 4, 0, 0, 0, 0, 1)"
113 PASS "transform: scale3d();" should be invalid
114 PASS "transform: scale3d(1, 2, 3, 4);" should be invalid
115 PASS "transform: scale3d(1px, 2px, 3px);" should be invalid
116 PASS "transform: scale3d(20%, 50%, 60%);" should be invalid
117 PASS "transform: scaleZ(2);" should parse as "scaleZ(2)"
118 PASS "transform: scaleZ(2);" should be computed to "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1)"
119 PASS "transform: scaleZ();" should be invalid
120 PASS "transform: scaleZ(1, 2);" should be invalid
121 PASS "transform: scaleZ(1px);" should be invalid
122 PASS "transform: scaleZ(50%);" should be invalid
123 PASS "transform: rotate3d(0, 0, 0, 0);" should parse as "rotate3d(0, 0, 0, 0deg)"
124 PASS "transform: rotate3d(1, 2, 3, 4deg);" should parse as "rotate3d(1, 2, 3, 4deg)"
125 PASS "transform: rotate3d();" should be invalid
126 PASS "transform: rotate3d(1, 2, 3);" should be invalid
127 PASS "transform: rotate3d(1, 2, 3, 4deg, 0);" should be invalid
128 PASS "transform: rotateX(0);" should parse as "rotateX(0deg)"
129 PASS "transform: rotateX(1deg);" should parse as "rotateX(1deg)"
130 PASS "transform: rotateX();" should be invalid
131 PASS "transform: rotateX(1deg, 1deg);" should be invalid
132 PASS "transform: rotateY(0);" should parse as "rotateY(0deg)"
133 PASS "transform: rotateY(1deg);" should parse as "rotateY(1deg)"
134 PASS "transform: rotateY();" should be invalid
135 PASS "transform: rotateY(1deg, 1deg);" should be invalid
136 PASS "transform: rotateZ(0);" should parse as "rotateZ(0deg)"
137 PASS "transform: rotateZ(1deg);" should parse as "rotateZ(1deg)"
138 PASS "transform: rotateZ();" should be invalid
139 PASS "transform: rotateZ(1deg, 1deg);" should be invalid
140 PASS "transform: perspective(2px);" should parse as "perspective(2px)"
141 PASS "transform: perspective(2px);" should be computed to "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.5, 0, 0, 0, 1)"
142 FAIL "transform: perspective(0px);" should be invalid assert_false: CSS.supports expected false got true
143 PASS "transform: perspective(2);" should be invalid
144 PASS "transform: perspective(5%);" should be invalid
145 PASS "transform: perspective();" should be invalid
146 PASS "transform: perspective(1px, 2px);" should be invalid
147 Harness: the test ran to completion.