wpt / css / geometry / DOMMatrix-002.html

Status: FAIL | Duration: 64ms | Subtests: 0/13 | Open test on wpt.live | wpt.fyi

Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)

SubtestStatusMessage
test translate() doesn't mutateFAILDOMMatrixReadOnly is not defined
test scale() doesn't mutateFAILDOMMatrixReadOnly is not defined
test scaleNonUniform() doesn't mutateFAILDOMMatrixReadOnly is not defined
test scale3d() doesn't mutateFAILDOMMatrixReadOnly is not defined
test rotate() doesn't mutateFAILDOMMatrixReadOnly is not defined
test rotateFromVector() doesn't mutateFAILDOMMatrixReadOnly is not defined
test rotateAxisAngle() doesn't mutateFAILDOMMatrixReadOnly is not defined
test skewX() doesn't mutateFAILDOMMatrixReadOnly is not defined
test skewY() doesn't mutateFAILDOMMatrixReadOnly is not defined
test multiply() doesn't mutateFAILDOMMatrixReadOnly is not defined
test flipX() doesn't mutateFAILDOMMatrixReadOnly is not defined
test flipY() doesn't mutateFAILDOMMatrixReadOnly is not defined
test inverse() doesn't mutateFAILDOMMatrixReadOnly is not defined

/css/geometry/DOMMatrix-002.html

<!DOCTYPE html>
<html>
<head>
    <title>Geometry Interfaces: DOMMatrixReadOnly methods do not mutate the object</title>
    <link href="mailto:peter.hall@algomi.com" rel="author" title="Peter Hall">
    <link rel="help" href="https://drafts.fxtf.org/geometry-1/#DOMMatrix">
    <script src="support/dommatrix-test-util.js"></script>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
</head>
<body>
    <p>Test DOMMatrixReadOnly methods do not mutate the object</p>
    <div id="log"></div>
    <script>

        function initialMatrix(){
          return DOMMatrixReadOnly.fromMatrix(
            {
              m11:1,   m12:-0.5, m13: 0.5,  m14:0,
              m21:0.5, m22:2,    m23: -0.5, m24:0,
              m31:0,   m32:0,    m33: 1,    m34:0,
              m41:0,   m42:0,    m43: 0,    m44:1,
              is2D: false
            }
          );
        }

        test(function() {
          var matrix = initialMatrix();
          matrix.translate(1,5,3);
          checkMatrix(matrix, initialMatrix());
        },"test translate() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.scale(1,5,3,0,1,3);
          checkMatrix(matrix, initialMatrix());
        },"test scale() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.scaleNonUniform(1,5);
          checkMatrix(matrix, initialMatrix());
        },"test scaleNonUniform() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.scale3d(3,2,1,1);
          checkMatrix(matrix, initialMatrix());
        },"test scale3d() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.rotate(Math.PI, Math.PI/2, Math.PI/6);
          checkMatrix(matrix, initialMatrix());
        },"test rotate() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.rotateFromVector(10,-4);
          checkMatrix(matrix, initialMatrix());
        },"test rotateFromVector() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.rotateAxisAngle(3,4,5, Math.PI/6);
          checkMatrix(matrix, initialMatrix());
        },"test rotateAxisAngle() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.skewX(20);
          checkMatrix(matrix, initialMatrix());
        },"test skewX() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.skewY(20);
          checkMatrix(matrix, initialMatrix());
        },"test skewY() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.multiply({ m11:1, m12:2, m13: 0, m14:0,
                            m21:-1, m22:2, m23: -1, m24:0,
                            m31:0, m32:0, m33: 1, m34:0,
                            m41:5, m42:0, m43: 2, m44:1,
                            is2D: false,
                            isIdentity:false });
          checkMatrix(matrix, initialMatrix());
        },"test multiply() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.flipX();
          checkMatrix(matrix, initialMatrix());
        },"test flipX() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.flipY();
          checkMatrix(matrix, initialMatrix());
        },"test flipY() doesn't mutate");

        test(function() {
          var matrix = initialMatrix();
          matrix.inverse();
          checkMatrix(matrix, initialMatrix());
        },"test inverse() doesn't mutate");

    </script>
</body>
</html>