summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_event.html
blob: d85266179122a256bac79b99c140090867483e3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE html>
<title>HTML Test: The style load event should fire when textContent is changed</title>
<link rel="author" href="mailto:masonf@chromium.org">
<link rel="help" href="https://html.spec.whatwg.org/multipage/semantics.html#update-a-style-block">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

<script>
  var loadCount = 0;
  function load() { loadCount++; }
</script>

<style id=target onload="load()">
  .box { color:red; }
</style>
<div class='box'>Box</div>

<script>
window.onload = () => {
  const target = document.getElementById('target');
  promise_test(async t => {
    assert_equals(loadCount,1,"Style element should have loaded once by now");
    target.textContent = `.box { color: green; }`;
    await new Promise(resolve => target.addEventListener('load', resolve));
    assert_equals(loadCount,2,"Style element should fire the load event when textContent changes");
  },"style load event should fire when textContent changed");
};
</script>