blob: dd223a8622df90b6ea32b8b73600c257c58ceba4 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script src="../../resources/js-test.js"></script>
</head>
<body>
<p id="description"></p>
<div id="div" style="width: 200px; height: 200px; border: 1px solid red;">
<svg id="svg" xmlns="http://www.w3.org/2000/svg" style="width: 100%; height: 100%; border: 1px solid blue;">
<rect width="100%" height="100%" fill="green"/>
</svg>
</div>
<div id="console"></div>
<script>
if (window.testRunner) {
testRunner.waitUntilDone();
testRunner.dumpAsText();
}
// Force layout
document.body.offsetTop;
var div = document.getElementById('div');
var svg = document.getElementById('svg');
description('This tests the behavior of root SVG length value resolution');
debug('Initial/default values:');
shouldBe('svg.width.baseVal.value', '200');
shouldBe('svg.height.baseVal.value', '200');
svg.setAttribute('width', '50%');
svg.setAttribute('height', '10%');
debug('');
debug('Updated relative values:');
shouldBe('svg.width.baseVal.value', '100');
shouldBe('svg.height.baseVal.value', '20');
svg.setAttribute('width', '150');
svg.setAttribute('height', '50');
debug('');
debug('Updated fixed values:');
shouldBe('svg.width.baseVal.value', '150');
shouldBe('svg.height.baseVal.value', '50');
svg.setAttribute('width', '100%');
svg.setAttribute('height', '50%');
svg.setAttribute('viewBox', '0 0 800 600');
debug('');
debug('viewBox has no effect on top level length resolution.');
shouldBe('svg.width.baseVal.value', '200');
shouldBe('svg.height.baseVal.value', '100');
if (window.testRunner)
testRunner.notifyDone();
</script>
</body>
</html>