<!DOCTYPE html>
<title>IDBFactory.open() - error in version change transaction aborts open</title>
<link rel="author" title="Microsoft" href="http://www.microsoft.com">
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src=support.js></script>

<script>
    var open_rq = createdb(async_test(), undefined, 13);
    var did_upgrade = false;
    var did_db_abort = false;

    open_rq.onupgradeneeded = function(e) {
        did_upgrade = true;
        e.target.result.onabort = function() {
            did_db_abort = true;
        }
        e.target.transaction.abort();
    };
    open_rq.onerror = function(e) {
        assert_true(did_upgrade);
        assert_equals(e.target.error.name, 'AbortError', 'target.error');
        this.done()
    };
</script>

<div id=log></div>
