<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Fonts Module Level 4: serialization of font-variant</title>
<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-variant">
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1797146">
<meta name="assert" content="re-setting font-variant to its serialization should be idempotent">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<div id=target style=""></div>
<script>
test(function(){
let div = document.getElementById("target");
let sty = div.style;
sty.font = "12px serif";
v = sty.fontVariant;
assert_in_array(v, ["", "normal"]); // Accept either explicit 'normal' or empty.
sty.fontVariant = v;
assert_equals(sty.fontVariant, v);
sty.font = "menu";
v = sty.fontVariant;
assert_in_array(v, ["", "normal"]);
sty.font = "12px serif"
sty.fontVariantNumeric = "tabular-nums";
v = sty.fontVariant;
assert_equals(v, "tabular-nums");
sty.fontVariant = v;
assert_equals(sty.fontVariant, v);
sty.font = "menu"
sty.fontVariantNumeric = "tabular-nums";
v = sty.fontVariant;
assert_equals(v, "tabular-nums");
sty.fontVariant = v;
assert_equals(sty.fontVariant, v);
sty.font = "12px serif"
sty.fontVariantNumeric = "tabular-nums";
sty.fontVariantCaps = "small-caps";
v = sty.fontVariant;
sty.fontVariant = v;
assert_equals(sty.fontVariant, v);
sty.font = "menu"
sty.fontVariantNumeric = "tabular-nums";
sty.fontVariantCaps = "small-caps";
v = sty.fontVariant;
sty.fontVariant = v;
assert_equals(sty.fontVariant, v);
}, "checking serialized value of font-variant");
</script>
</body>
</html>