blob: 2275ce5bbd525f8b6ed579b4c723177b78c4df6a [file] [log] [blame]
<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<style>
#actual {
transition: transform 2s -1s linear;
}
</style>
<div id="actual"></div>
<div id="expected"></div>
<script>
function setTransform(transform) {
actual.style.transform = transform;
}
function expectTransform(transform) {
expected.style.transform = transform;
assert_equals(getComputedStyle(actual).transform, getComputedStyle(expected).transform, transform);
}
test(() => {
expectTransform('none');
setTransform('rotateX(100deg) rotateY(100deg) rotateZ(100deg) rotate3d(1, 1, 1, 100deg)');
expectTransform('rotateX(50deg) rotateY(50deg) rotateZ(50deg) rotate3d(1, 1, 1, 50deg)');
setTransform('rotateX(250deg) rotateY(250deg) rotateZ(250deg) rotate3d(1, 1, 1, 250deg)');
expectTransform('rotateX(150deg) rotateY(150deg) rotateZ(150deg) rotate3d(1, 1, 1, 150deg)');
setTransform('rotateX(350deg) rotateY(350deg) rotateZ(350deg) rotate3d(1, 1, 1, 350deg)');
expectTransform('rotateX(250deg) rotateY(250deg) rotateZ(250deg) rotate3d(1, 1, 1, 250deg)');
}, 'Retargeted rotation transform transitions should not decompose when rotation operations match');
</script>