<!DOCTYPE html>
<html>
<head>
<style>
#target {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAIAAABLixI0AAAAJklEQVR4nGJg+M9ANTRq1qhZo2aNmjVq1qhZo2ZhIAAAAAD//wMA1XBuro0zsokAAAAASUVORK5CYII=) center no-repeat;
    width: 32px;
    height: 32px;
    position: absolute;
    left: 0;
    top: 0;
}
</style>
<script>
if (window.testRunner) {
    if (window.localStorage.getItem("finish-during-reload") == null)
        testRunner.setImagesAllowed(false);
    testRunner.waitUntilDone();
}

function test() {
    if (window.localStorage.getItem("finish-during-reload") == null) {
        window.localStorage.setItem("finish-during-reload", "reload");
        testRunner.setImagesAllowed(true);
        internals.forceReload(false);
    } else {
        window.localStorage.clear();
        if (window.testRunner)
            testRunner.notifyDone();
    };
}
</script>
</head>
<body onload="setTimeout(test, 0);">
  <div id="target"></div>
</body>
</html>


