blob: fb278f91dba35fa496c5221027f9fd0337e09d1a [file] [log] [blame]
<!doctype html>
<!-- Submitted from TestTWF Paris -->
<title>When db.close is called in upgradeneeded, the db is cleaned up on refresh</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=support.js></script>
<script>
var db
var open_rq = createdb(async_test())
var sawTransactionComplete = false
open_rq.onupgradeneeded = function(e) {
db = e.target.result
assert_equals(db.version, 1)
db.createObjectStore('os')
db.close()
e.target.transaction.oncomplete = function() { sawTransactionComplete = true }
}
open_rq.onerror = function(e) {
assert_true(sawTransactionComplete, "saw transaction.complete")
assert_equals(e.target.error.name, 'AbortError')
assert_equals(e.result, undefined)
assert_true(!!db)
assert_equals(db.version, 1)
assert_equals(db.objectStoreNames.length, 1)
assert_throws_dom("InvalidStateError", function() { db.transaction('os') })
this.done()
}
</script>
<div id=log></div>