blob: fbc2ab63f167d079aa4859fef393c128bc7ad952 [file] [log] [blame]
<!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>