<style>
  .container {
    height: 100px;
    width: 200px;
    margin: 30px;
    outline: 1px solid black;
  }
  .box {
    height: 100%;
    width: 100%;
    padding: 5px;
    margin: 5px;
    border: 5px solid gray;
    background-color: green;
    transform-origin: 20% 50%;
  }
</style>

<div class="container">
  <div id="test-box" class="box"></div>
</div>

<script type="text/javascript" charset="utf-8">
  import "../resources/third_party/unittest/unittest.dart";
  import "../resources/unit.dart";

  import "dart:sky";

  void main() {
    initUnit();

    var testBox = document.getElementById('test-box');

    void testTransformRoundTrip(transform, resultMatrix) {
      testBox.style['transform'] = transform;
      var computedTransform = window.getComputedStyle(testBox)['transform'];
      expect(computedTransform, equals(resultMatrix));
    }

    test('pixel translate should roundtrip', () {
      testTransformRoundTrip('translate(80px, 90px)', 'matrix(1, 0, 0, 1, 80, 90)');
    });

    test('percent translate should roundtrip', () {
      testTransformRoundTrip('translate(10px, 50%)', 'matrix(1, 0, 0, 1, 10, 60)');
    });

    test('scale should roundtrip', () {
      testTransformRoundTrip('scale(1.2, 0.8)', 'matrix(1.2, 0, 0, 0.8, 0, 0)');
    });

    test('removing a transform should not crash', () {
      testBox.style['transform'] = 'translate(0, 0, 0)';
      testBox.getBoundingClientRect();
      testBox.style.removeProperty('transform');
      testBox.getBoundingClientRect();
    });
  }
</script>
