2010-05-28 Eric Uhrhane <ericu@chromium.org>
[WebKit-https.git] / LayoutTests / storage / change-version-handle-reuse.js
1 function finishTest()
2 {
3     log("TEST COMPLETE.");
4
5     if (window.layoutTestController)
6         layoutTestController.notifyDone();
7 }
8
9 function runTest()
10 {
11     try {
12         db = openDatabaseWithSuffix("ChangeVersion", "", "Test that changing a database version doesn't kill our handle to it", 1);
13         var version = db.version;
14         var newVersion = version ? (parseInt(version) + 1).toString() : "1"; 
15         db.changeVersion(version, newVersion, function(tx) {
16             log("changeVersion: transaction callback");
17         }, function(error) {
18             log("changeVersion: error callback: " + error.message);
19         }, function() {
20             log("changeVersion: success callback");
21             runTest2();
22         });
23         
24     } catch (e) {
25         log("changeVersion exception: " + e);
26         finishTest();
27     }
28 }
29  
30 function runTest2()
31 {
32     try {
33         db.transaction(function(tx) {
34             tx.executeSql("SELECT * from FooBar", [], function(tx) {
35                 log("transaction: statement callback");
36                 finishTest();
37             }, function(tx, error) {
38                 log("transaction: statement error callback: " + error.message);
39                 finishTest();
40             });
41         });
42     } catch (e) {
43         log("transaction exception: " + e);
44         finishTest();
45     }
46 }