Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / fast / dom / geometry-interfaces-dom-matrix-translate.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>Geometry Interfaces: DOMMatrix translate</title>
5 <script src="../../resources/testharness.js"></script>
6 <script src="../../resources/testharnessreport.js"></script>
7 </head>
8 <body>
9 <script>
10
11 test(function() {
12   var matrix = new DOMMatrix();
13   assert_true(matrix.is2D);
14   assert_true(matrix.isIdentity);
15   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ]);
16   var result = matrix.translate(2, 3);
17   assert_true(result.is2D);
18   assert_false(result.isIdentity);
19   assert_array_equals(result.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 0, 1 ]);
20   assert_true(matrix.is2D);
21   assert_true(matrix.isIdentity);
22   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ]);
23 }, "DOMMatrix.translate(tx, ty)");
24
25 test(function() {
26   var matrix = new DOMMatrix();
27   matrix.translateSelf(2, 3);
28   assert_true(matrix.is2D);
29   assert_false(matrix.isIdentity);
30   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 0, 1 ]);
31   var result = matrix.translate(4, 2);
32   assert_true(result.is2D);
33   assert_false(result.isIdentity);
34   assert_array_equals(result.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 6, 5, 0, 1 ]);
35   assert_true(matrix.is2D);
36   assert_false(matrix.isIdentity);
37   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 0, 1 ]);
38 }, "DOMMatrix.translate(tx, ty) with non-identity");
39
40 test(function() {
41   var matrix = new DOMMatrix();
42   assert_true(matrix.is2D);
43   assert_true(matrix.isIdentity);
44   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ]);
45   var result = matrix.translateSelf(4, 2);
46   assert_true(result.is2D);
47   assert_false(result.isIdentity);
48   assert_array_equals(result.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4, 2, 0, 1 ]);
49   assert_true(matrix.is2D);
50   assert_false(matrix.isIdentity);
51   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4, 2, 0, 1 ]);
52 }, "DOMMatrix.translateSelf(tx, ty)");
53
54 test(function() {
55   var matrix = new DOMMatrix();
56   assert_true(matrix.is2D);
57   assert_true(matrix.isIdentity);
58   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ]);
59   var result = matrix.translate(2, 3, 4);
60   assert_false(result.is2D);
61   assert_false(result.isIdentity);
62   assert_array_equals(result.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 4, 1 ]);
63   assert_true(matrix.is2D);
64   assert_true(matrix.isIdentity);
65   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ]);
66 }, "DOMMatrix.translate(tx, ty, tz)");
67
68 test(function() {
69   var matrix = new DOMMatrix();
70   matrix.translateSelf(2, 3);
71   assert_true(matrix.is2D);
72   assert_false(matrix.isIdentity);
73   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 0, 1 ]);
74   var result = matrix.translate(4, 2, 3);
75   assert_false(result.is2D);
76   assert_false(result.isIdentity);
77   assert_array_equals(result.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 6, 5, 3, 1 ]);
78   assert_true(matrix.is2D);
79   assert_false(matrix.isIdentity);
80   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 0, 1 ]);
81 }, "DOMMatrix.translate(tx, ty, tz) with non-identity");
82
83 test(function() {
84   var matrix = new DOMMatrix();
85   assert_true(matrix.is2D);
86   assert_true(matrix.isIdentity);
87   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ]);
88   var result = matrix.translateSelf(4, 2, 3);
89   assert_false(result.is2D);
90   assert_false(result.isIdentity);
91   assert_array_equals(result.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4, 2, 3, 1 ]);
92   assert_false(matrix.is2D);
93   assert_false(matrix.isIdentity);
94   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4, 2, 3, 1 ]);
95 }, "DOMMatrix.translateSelf(tx, ty, tz)");
96
97 test(function() {
98   var matrix = new DOMMatrix();
99   assert_true(matrix.is2D);
100   assert_true(matrix.isIdentity);
101   matrix.m14 = 2;
102   matrix.m24 = 3;
103   matrix.m34 = 4;
104   matrix.m44 = 7;
105   assert_false(matrix.is2D);
106   assert_false(matrix.isIdentity);
107   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 2, 0, 1, 0, 3, 0, 0, 1, 4, 0, 0, 0, 7 ]);
108   matrix.translateSelf(7, -8, 2);
109   assert_false(matrix.is2D);
110   assert_false(matrix.isIdentity);
111   assert_array_equals(matrix.toFloat64Array(), [ 1, 0, 0, 2, 0, 1, 0, 3, 0, 0, 1, 4, 7, -8, 2, 5 ]);
112 }, "DOMMatrix.translateSelf(tx, ty, tz) Homogeneous Coordinates");
113
114 </script>
115 </body>
116 </html>