blob: d68264ba1af1b99483e40384626d509fd4e36827 [file] [log] [blame]
<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<style>
div {
/* This is required so that z-index doesn't compute as auto. */
position: relative;
}
</style>
<div id="animated"></div>
<div id="reference"></div>
<script>
var numberProperties = [
'flex-grow',
'flex-shrink',
'font-size-adjust',
'line-height',
'orphans',
'stroke-miterlimit',
'widows',
'z-index',
];
var bigNumber = 1e20;
function toCamelCase(property) {
for (var i = property.length - 2; i > 0; --i) {
if (property[i] === '-') {
property = property.substring(0, i) + property[i + 1].toUpperCase() + property.substring(i + 2);
}
}
return property;
}
for (var property of numberProperties) {
test(() => {
animated.animate({[toCamelCase(property)]: bigNumber}, {fill: 'forwards'});
reference.style[property] = bigNumber;
assert_equals(getComputedStyle(animated)[property], getComputedStyle(reference)[property]);
}, `Animations on ${property} should clamp identically to setting inline style`);
}
</script>