mirror of
https://github.com/servo/servo.git
synced 2025-06-23 16:44:33 +01:00
54 lines
2.5 KiB
JavaScript
54 lines
2.5 KiB
JavaScript
var selfPositionValues = [ "start", "end", "self-start", "self-end", "left", "right", "center", "flex-start", "flex-end"];
|
|
var contentPositionValues = [ "start", "end", "left", "right", "center", "flex-start", "flex-end"];
|
|
var distributionValues = [ "stretch", "space-around", "space-between", "space-evenly"];
|
|
var baselineValues = [ "baseline", "first baseline", "last baseline"];
|
|
|
|
function checkPlaceShorhand(shorthand, alignValue, justifyValue)
|
|
{
|
|
var div = document.createElement("div");
|
|
var specifiedValue = (alignValue + " " + justifyValue).trim();
|
|
div.style[shorthand] = specifiedValue;
|
|
document.body.appendChild(div);
|
|
|
|
if (alignValue === justifyValue)
|
|
specifiedValue = alignValue;
|
|
|
|
var resolvedValue = getComputedStyle(div).getPropertyValue(shorthand);
|
|
if (alignValue === "first baseline")
|
|
alignValue = "baseline";
|
|
if (justifyValue === "first baseline")
|
|
justifyValue = "baseline";
|
|
if (justifyValue === "")
|
|
justifyValue = alignValue;
|
|
var expectedResolvedValue = (alignValue + " " + justifyValue).trim()
|
|
|
|
assert_equals(div.style[shorthand], specifiedValue, shorthand + " specified value");
|
|
// FIXME: We need https://github.com/w3c/csswg-drafts/issues/1041 to clarify which
|
|
// value is expected for the shorthand's 'resolved value".
|
|
assert_in_array(resolvedValue, ["", expectedResolvedValue], shorthand + " resolved value");
|
|
}
|
|
|
|
function checkPlaceShorhandLonghands(shorthand, alignLonghand, justifyLonghand, alignValue, justifyValue = "")
|
|
{
|
|
var div = document.createElement("div");
|
|
div.setAttribute("style", shorthand + ": " + alignValue + " " + justifyValue);
|
|
document.body.appendChild(div);
|
|
if (justifyValue === "")
|
|
justifyValue = alignValue;
|
|
assert_equals(div.style[alignLonghand],
|
|
alignValue, alignLonghand + " expanded value");
|
|
assert_equals(div.style[justifyLonghand],
|
|
justifyValue, justifyLonghand + " expanded value");
|
|
}
|
|
|
|
function checkPlaceShorthandInvalidValues(shorthand, alignLonghand, justifyLonghand, value)
|
|
{
|
|
var div = document.createElement("div");
|
|
var css = alignLonghand + ": start; " + justifyLonghand + ": end;" + shorthand + ": " + value;
|
|
div.setAttribute("style", css);
|
|
document.body.appendChild(div);
|
|
assert_equals(div.style[alignLonghand],
|
|
"start", alignLonghand + " expanded value");
|
|
assert_equals(div.style[justifyLonghand],
|
|
"end", justifyLonghand + " expanded value");
|
|
}
|