| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 function test() | |
| 6 { | |
| 7 if (document.location.hash === '#tab1') { | |
| 8 prepareDatabase(0, function () { doSetVersion(1); }); | |
| 9 } else if (document.location.hash === '#tab2') { | |
| 10 doSetVersion(2); | |
| 11 } else { | |
| 12 result('fail - unexpected hash'); | |
| 13 } | |
| 14 } | |
| 15 | |
| 16 function prepareDatabase(version, callback) | |
| 17 { | |
| 18 // Prepare the database, then exit normally | |
| 19 var delreq = window.indexedDB.deleteDatabase('version-change-blocked'); | |
| 20 delreq.onerror = unexpectedErrorCallback; | |
| 21 delreq.onsuccess = function() { | |
| 22 var openreq = window.indexedDB.open('version-change-blocked'); | |
| 23 openreq.onerror = unexpectedErrorCallback; | |
| 24 openreq.onsuccess = function(e) { | |
| 25 var db = openreq.result; | |
| 26 var setverreq = db.setVersion(String(version)); | |
| 27 setverreq.onerror = unexpectedErrorCallback; | |
| 28 setverreq.onsuccess = function(e) { | |
| 29 var transaction = setverreq.result; | |
| 30 transaction.onabort = unexpectedAbortCallback; | |
| 31 transaction.oncomplete = function (e) { | |
| 32 db.close(); | |
| 33 callback(); | |
| 34 }; | |
| 35 }; | |
| 36 }; | |
| 37 }; | |
| 38 } | |
| 39 | |
| 40 function doSetVersion(version) | |
| 41 { | |
| 42 // Open the database and try a setVersion | |
| 43 var openreq = window.indexedDB.open('version-change-blocked'); | |
| 44 openreq.onerror = unexpectedErrorCallback; | |
| 45 openreq.onsuccess = function(e) { | |
| 46 window.db = openreq.result; | |
| 47 var setverreq = window.db.setVersion(String(version)); | |
| 48 setverreq.onerror = unexpectedErrorCallback; | |
| 49 setverreq.onblocked = function(e) { | |
| 50 result('setVersion(' + version + ') blocked'); | |
| 51 }; | |
| 52 setverreq.onsuccess = function(e) { | |
| 53 result('setVersion(' + version + ') complete'); | |
| 54 }; | |
| 55 }; | |
| 56 } | |
| OLD | NEW |