diff options
Diffstat (limited to 'LayoutTests/storage/resources/stress-frame.html')
-rw-r--r-- | LayoutTests/storage/resources/stress-frame.html | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/LayoutTests/storage/resources/stress-frame.html b/LayoutTests/storage/resources/stress-frame.html new file mode 100644 index 0000000..b99af3c --- /dev/null +++ b/LayoutTests/storage/resources/stress-frame.html @@ -0,0 +1,51 @@ +<!doctype html> +<html> +<head> +<script> +var db; + +try { + if (window.openDatabase) { + db = openDatabase("StressTest2", "1.0", "Database stress test", 200000); + if (!db) + alert("Failed to open the database on disk. This is probably because the version was bad or there is not enough space left in this domain's quota"); + } else + alert("Couldn't open the database. Please try with a WebKit nightly with this feature enabled"); +} catch(err) { } + +function loaded() +{ + db.transaction(function(tx) { + tx.executeSql("SELECT COUNT(*) FROM WebkitStickyNotes", [], function(result) { + loadNotes(); + }, function(tx, error) { + tx.executeSql("CREATE TABLE WebKitStickyNotes (id REAL UNIQUE, note TEXT)", [], function(result) { + tx.executeSql("INSERT INTO WebKitStickyNotes (id, note) VALUES (?, ?)", [1, 'Text'], function(result) { + tx.executeSql("INSERT INTO WebKitStickyNotes (id, note) VALUES (?, ?)", [2, 'More Text'], function(result) { + loadNotes(); + }); + }); + }); + }); + }); +} + +function loadNotes() +{ + db.transaction(function(tx) { + tx.executeSql("SELECT id, note FROM WebKitStickyNotes", [], function(tx, result) { + loadNotes(); + }, function(tx, error) { + alert('Failed to retrieve notes from database - ' + error.message); + return; + }); + }); +} + +addEventListener('load', loaded, false); +</script> +</head> +<body> +<p>This test needs to run without crashes and assertion failures for a while.<p> +</body> +</html> |