diff options
Diffstat (limited to 'testing/web-platform/tests/css/geometry/DOMMatrix-newobject.html')
-rw-r--r-- | testing/web-platform/tests/css/geometry/DOMMatrix-newobject.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/geometry/DOMMatrix-newobject.html b/testing/web-platform/tests/css/geometry/DOMMatrix-newobject.html new file mode 100644 index 0000000000..33604e3c67 --- /dev/null +++ b/testing/web-platform/tests/css/geometry/DOMMatrix-newobject.html @@ -0,0 +1,44 @@ +<!DOCTYPE html> +<title>Geometry Interfaces: DOMMatrix and DOMMatrixReadOnly [NewObject] methods</title> +<link rel="help" href="https://drafts.fxtf.org/geometry/#DOMMatrix"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +function getReturnType(method) { + switch(method) { + case "transformPoint": return "DOMPoint"; break; + case "toFloat32Array": return "Float32Array"; break; + case "toFloat64Array": return "Float64Array"; break; + default: return "DOMMatrix"; break; + } +} +["DOMMatrix", "DOMMatrixReadOnly"].forEach((constr) => { + ["translate", + "scale", + "scale3d", + "rotate", + "rotateFromVector", + "rotateAxisAngle", + "skewX", + "skewY", + "multiply", + "flipX", + "flipY", + "inverse", + "transformPoint", + "toFloat32Array", + "toFloat64Array"].forEach((method) => { + test(() => { + const matrix = new self[constr](); + const a = matrix[method](); + const b = matrix[method](); + assert_class_string(matrix, constr, 'matrix'); + assert_class_string(a, getReturnType(method), 'a'); + assert_class_string(b, getReturnType(method), 'b'); + assert_not_equals(a, b, 'a !== b'); + assert_not_equals(a, matrix, 'a !== matrix'); + assert_not_equals(b, matrix, 'b !== matrix'); + }, `${constr} ${method}`); + }); +}); +</script> |