<!DOCTYPE HTML>
<meta charset=utf-8>
<title>Element Timing: observe element with background image</title>
<body>
<style>
body {
  margin: 0;
}
#target {
  width: 100px;
  height: 50px;
  background-image: url('/images/black-rectangle.png');
}
</style>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/element-timing-helpers.js"></script>
<script>
  let beforeRender = performance.now();
  async_test(function (t) {
    assert_implements(window.PerformanceElementTiming, "PerformanceElementTiming is not implemented");
    const observer = new PerformanceObserver(
      t.step_func_done(function(entryList) {
        assert_equals(entryList.getEntries().length, 1);
        const entry = entryList.getEntries()[0];
        const pathname = window.location.origin + '/images/black-rectangle.png';
        checkElement(entry, pathname, 'my_div', 'target', beforeRender,
            document.getElementById('target'));
        checkRect(entry, [0, 100, 0, 50]);
        checkNaturalSize(entry, 100, 50);
      })
    );
    observer.observe({entryTypes: ['element']});
  }, 'Element with elementtiming attribute and background image is observable.');
</script>
<div id='target' elementtiming='my_div'></div>
</body>
