tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

DOMMatrix-invert-preserves-2d.html (1043B)


      1 <!DOCTYPE html>
      2 <title>Test DOMMatrix.inverse()/invertSelf() keep is2D status</title>
      3 <link rel="help" href="https://drafts.fxtf.org/geometry-1/#DOMMatrix">
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <script>
      7 function check2D(m) {
      8  assert_true(m.is2D);
      9  // assert_equals() distinguish 0 and -0, so use '== 0' instead.
     10  assert_true(m.m13 == 0);
     11  assert_true(m.m14 == 0);
     12  assert_true(m.m23 == 0);
     13  assert_true(m.m24 == 0);
     14  assert_true(m.m31 == 0);
     15  assert_true(m.m32 == 0);
     16  assert_equals(m.m33, 1);
     17  assert_true(m.m34 == 0);
     18  assert_true(m.m43 == 0);
     19  assert_equals(m.m44, 1);
     20 }
     21 
     22 test(function() {
     23  for (var s = 0.1; s < 20; s += 0.1) {
     24    m = new DOMMatrix().scale(s, s);
     25    check2D(m);
     26    check2D(m.inverse());
     27    m.invertSelf();
     28    check2D(m);
     29  }
     30 }, "scale");
     31 
     32 test(function() {
     33  for (var r = 0; r < 180; r += 2) {
     34    m = new DOMMatrix().rotate(r);
     35    check2D(m);
     36    check2D(m.inverse());
     37    m.invertSelf();
     38    check2D(m);
     39  }
     40 }, "rotate");
     41 </script>