<!doctype html>
<title>CSS Test: computed style declaration includes custom properties.</title>
<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
<link rel="author" href="https://mozilla.org" title="Mozilla">
<link rel="help" href="https://drafts.csswg.org/cssom/#dom-window-getcomputedstyle">
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/1316">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div style="--foo:bar"></div>
<div></div>
<script>
  test(function() {
    let withCustom = getComputedStyle(document.querySelector("div"));
    let withoutCustom = getComputedStyle(document.querySelector("div + div"));
    assert_equals(withCustom.getPropertyValue("--foo"), "bar", "Should be returned from getPropertyValue");
    assert_equals(withCustom.length, withoutCustom.length + 1, "Should show up in .length");
    assert_equals(withCustom[withCustom.length - 1], "--foo", "Should be after all the non-custom properties");
  }, "Custom properties are included in computed style");
</script>
