| <!DOCTYPE html> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <script src="./resources/geometry-interfaces-test-helpers.js"></script> |
| <script> |
| test(() => { |
| var p1 = new DOMPoint(0, 1, 3, 4); |
| var p2 = new DOMPoint(5, 6, 7, 8); |
| var p3 = new DOMPoint(9, 10, 11, 12); |
| var p4 = new DOMPoint(13, 14, 15, 16); |
| var quad = new DOMQuad(p1, p2, p3, p4); |
| assert_dom_point_equals(quad.p1, p1); |
| assert_dom_point_equals(quad.p2, p2); |
| assert_dom_point_equals(quad.p3, p3); |
| assert_dom_point_equals(quad.p4, p4); |
| }, "DOMQuad() constructor"); |
| |
| test(() => { |
| var p1 = new DOMPoint(0, 1, 3, 4); |
| var p2 = new DOMPoint(5, 6, 7, 8); |
| var p3 = new DOMPoint(9, 10, 11, 12); |
| var p4 = new DOMPoint(13, 14, 15, 16); |
| var quad = new DOMQuad(p1, p2, p3, p4); |
| assert_dom_point_equals(quad.toJSON().p1, p1, "p1"); |
| assert_dom_point_equals(quad.toJSON().p2, p2, "p2"); |
| assert_dom_point_equals(quad.toJSON().p3, p3, "p3"); |
| assert_dom_point_equals(quad.toJSON().p4, p4, "p4"); |
| }, "DOMQuad() toJSON()"); |
| |
| test(() => { |
| var expect_p1 = new DOMPoint(10, 20, 0, 1); |
| var expect_p2 = new DOMPoint(90, 20, 0, 1); |
| var expect_p3 = new DOMPoint(90, 70, 0, 1); |
| var expect_p4 = new DOMPoint(10, 70, 0, 1); |
| var quad = DOMQuad.fromRect({x: 10, y: 20, width: 80, height: 50}); |
| assert_dom_point_equals(quad.p1, expect_p1, "p1"); |
| assert_dom_point_equals(quad.p2, expect_p2, "p2"); |
| assert_dom_point_equals(quad.p3, expect_p3, "p3"); |
| assert_dom_point_equals(quad.p4, expect_p4, "p4"); |
| }, "DOMQuad() fromRect"); |
| |
| test(() => { |
| var expect_p1 = new DOMPoint(0, 1, 2, 3); |
| var expect_p2 = new DOMPoint(4, 5, 6, 7); |
| var expect_p3 = new DOMPoint(8, 9, 10, 11); |
| var expect_p4 = new DOMPoint(12, 13, 14, 15); |
| var quad = DOMQuad.fromQuad({p1: {x: 0, y: 1, z: 2, w: 3}, |
| p2: {x: 4, y: 5, z: 6, w: 7}, |
| p3: {x: 8, y: 9, z: 10, w: 11}, |
| p4: {x: 12, y: 13, z: 14, w: 15}}); |
| assert_dom_point_equals(quad.p1, expect_p1, "p1"); |
| assert_dom_point_equals(quad.p2, expect_p2, "p2"); |
| assert_dom_point_equals(quad.p3, expect_p3, "p3"); |
| assert_dom_point_equals(quad.p4, expect_p4, "p4"); |
| }, "DOMQuad() fromQuad"); |
| |
| test(() => { |
| var expect_p1 = new DOMPoint(0, 0, 0, 1); |
| var expect_p2 = new DOMPoint(0, 0, 0, 1); |
| var expect_p3 = new DOMPoint(0, 0, 0, 1); |
| var expect_p4 = new DOMPoint(0, 0, 0, 1); |
| var quad = DOMQuad.fromQuad({}); |
| assert_dom_point_equals(quad.p1, expect_p1, "p1"); |
| assert_dom_point_equals(quad.p2, expect_p2, "p2"); |
| assert_dom_point_equals(quad.p3, expect_p3, "p3"); |
| assert_dom_point_equals(quad.p4, expect_p4, "p4"); |
| }, "DOMQuad() fromQuad - parameter of fromQuad function does not have any point."); |
| |
| test(() => { |
| var p1 = new DOMPoint(40, 25, 0, 1); |
| var p2 = new DOMPoint(180, 8, 0, 1); |
| var p3 = new DOMPoint(210, 150, 0, 1); |
| var p4 = new DOMPoint(10, 180, 0, 1); |
| var expect_rect = new DOMRect(10, 8, 200, 172); |
| var quad = new DOMQuad(p1, p2, p3, p4); |
| assert_dom_rect_equals(quad.getBounds(), expect_rect); |
| }, "DOMQuad() getBounds"); |
| |
| </script> |