<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Fonts Module Level 3: getComputedStyle().fontWeight</title>
<link rel="help" href="https://www.w3.org/TR/css-fonts-3/#font-weight-prop">
<meta name="assert" content="font-weight computed value is a number.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="container">
  <div id="target"></div>
</div>
<script>
'use strict';
test_computed_value('font-weight', 'normal', '400');
test_computed_value('font-weight', 'bold', '700');
test_computed_value('font-weight', '100');
test_computed_value('font-weight', '200');
test_computed_value('font-weight', '300');
test_computed_value('font-weight', '400');
test_computed_value('font-weight', '500');
test_computed_value('font-weight', '600');
test_computed_value('font-weight', '700');
test_computed_value('font-weight', '800');
test_computed_value('font-weight', '900');

function test_relative(specified, inherited, computed) {
  test(() => {
    const container = document.getElementById('container');
    const target = document.getElementById('target');
    container.style.fontWeight = inherited;
    target.style.fontWeight = specified;
    assert_equals(getComputedStyle(target).fontWeight, computed);
  }, inherited + ' made ' + specified + ' computes to ' + computed);
}

test_relative('bolder', '100', '400');
test_relative('bolder', '200', '400');
test_relative('bolder', '300', '400');
test_relative('bolder', '400', '700');
test_relative('bolder', '500', '700');
test_relative('bolder', '600', '900');
test_relative('bolder', '700', '900');
test_relative('bolder', '800', '900');
test_relative('bolder', '900', '900');

test_relative('lighter', '100', '100');
test_relative('lighter', '200', '100');
test_relative('lighter', '300', '100');
test_relative('lighter', '400', '100');
test_relative('lighter', '500', '100');
test_relative('lighter', '600', '400');
test_relative('lighter', '700', '400');
test_relative('lighter', '800', '700');
test_relative('lighter', '900', '700');
</script>
</body>
</html>
