<script>
if (window.testRunner) {
    testRunner.dumpBackForwardList();
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}
onload = function() {
    window.location = 'resources/slow-resource.pl?delay=100';
    setTimeout(function() {window.location = 'navigation-interrupted-by-fragment.html#abc'}, 10);
}

onhashchange = function() {
    setTimeout(done, 100);
}

function done() {
    console.log('Visited fragment and waited.');
    if (window.testRunner) {
        testRunner.notifyDone();
    }
}

console.log('First visit.');

</script>
<p>This test checks that interrupting a slow navigation with a fragment navigation will cancel the first navigation.
