summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/IndexedDB/abort-in-initial-upgradeneeded.html
blob: 6330ecb02e9fb7ba1ec76600787f31b70b7f75ed (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
29
30
31
32
33
34
35
<!doctype html>
<!-- Submitted from TestTWF Paris -->
<title>Test that an abort in the initial upgradeneeded sets version back to 0</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=support.js></script>

<script>

var db, open_rq = createdb(async_test(), undefined, 2);

open_rq.onupgradeneeded = function(e) {
    db = e.target.result;
    assert_equals(db.version, 2);
    transaction = e.target.transaction;
    transaction.oncomplete = fail(this, "unexpected transaction.complete");
    transaction.onabort = function(e) {
        assert_equals(e.target.db.version, 0);
    }
    db.onabort = function() {}

    transaction.abort();
}

open_rq.onerror = function(e) {
    assert_equals(open_rq, e.target);
    assert_equals(e.target.result, undefined);
    assert_equals(e.target.error.name, "AbortError");
    assert_equals(db.version, 0);
    assert_equals(open_rq.transaction, null);
    this.done();
}
</script>

<div id=log></div>