Commit cdca045b authored by Joshua Bell's avatar Joshua Bell Committed by Commit Bot

WPT: Deflake some Indexed DB tests

Noticed as flakes in wpt-firefox-stability-nightly, interfering
with landing some other tests.

These tests don't use helpers to ensure unique database names and are
sensisive to residue left by previous tests, e.g. if the cleanup
functions don't run. Make the tests somewhat more robust by ensuring
unique names and deleting state left by previous runs.

Change-Id: Ie2cb5672f12c0fed0e6ff53900f16e5ba8998262
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2086452Reviewed-by: default avatarDaniel Murphy <dmurph@chromium.org>
Commit-Queue: Joshua Bell <jsbell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#748914}
parent 908a14ac
...@@ -9,11 +9,14 @@ ...@@ -9,11 +9,14 @@
<script> <script>
var t = async_test("Delete an existing database"); var t = async_test("Delete an existing database"),
dbname = location + '-' + t.name;
t.step(function() { t.step(function() {
indexedDB.deleteDatabase(dbname);
var db; var db;
var openrq = indexedDB.open('db', 3); var openrq = indexedDB.open(dbname, 3);
openrq.onupgradeneeded = function(e) { openrq.onupgradeneeded = function(e) {
e.target.result.createObjectStore('store'); e.target.result.createObjectStore('store');
...@@ -36,7 +39,7 @@ ...@@ -36,7 +39,7 @@
}); });
function Second(e) { function Second(e) {
var deleterq = indexedDB.deleteDatabase('db'); var deleterq = indexedDB.deleteDatabase(dbname);
deleterq.onsuccess = function(e) { t.done(); } deleterq.onsuccess = function(e) { t.done(); }
......
...@@ -7,7 +7,9 @@ ...@@ -7,7 +7,9 @@
<script> <script>
async_test(function(t) { async_test(function(t) {
var open_rq = indexedDB.open("idbtransaction-" + document.location + t.name); var dbname = "idbtransaction-" + document.location + t.name;
indexedDB.deleteDatabase(dbname);
var open_rq = indexedDB.open(dbname);
open_rq.onblocked = t.unreached_func('open_rq.onblocked'); open_rq.onblocked = t.unreached_func('open_rq.onblocked');
open_rq.onerror = t.unreached_func('open_rq.onerror'); open_rq.onerror = t.unreached_func('open_rq.onerror');
...@@ -31,7 +33,9 @@ async_test(function(t) { ...@@ -31,7 +33,9 @@ async_test(function(t) {
}, document.title + " - request gotten by the handler"); }, document.title + " - request gotten by the handler");
async_test(function(t) { async_test(function(t) {
var open_rq = indexedDB.open("idbtransaction-" + document.location + t.name); var dbname = "idbtransaction-" + document.location + t.name;
indexedDB.deleteDatabase(dbname);
var open_rq = indexedDB.open(dbname);
assert_equals(open_rq.transaction, null, "IDBOpenDBRequest.transaction"); assert_equals(open_rq.transaction, null, "IDBOpenDBRequest.transaction");
assert_equals(open_rq.source, null, "IDBOpenDBRequest.source"); assert_equals(open_rq.source, null, "IDBOpenDBRequest.source");
......
...@@ -13,10 +13,13 @@ ...@@ -13,10 +13,13 @@
<script> <script>
var db, var db,
t = async_test(); t = async_test(),
dbname = location + '-' + t.name;
t.step(function() { t.step(function() {
var openrq = indexedDB.open('db', 3); indexedDB.deleteDatabase(dbname);
var openrq = indexedDB.open(dbname, 3);
openrq.onupgradeneeded = t.step_func(function(e) { openrq.onupgradeneeded = t.step_func(function(e) {
assert_equals(e.oldVersion, 0, "old version (upgradeneeded)"); assert_equals(e.oldVersion, 0, "old version (upgradeneeded)");
...@@ -48,7 +51,7 @@ ...@@ -48,7 +51,7 @@
}); });
function deleteDB (e) { function deleteDB (e) {
var deleterq = indexedDB.deleteDatabase('db'); var deleterq = indexedDB.deleteDatabase(dbname);
deleterq.onsuccess = t.step_func(function(e) { deleterq.onsuccess = t.step_func(function(e) {
assert_equals(e.result, undefined, "result (delete.success for nonexistent db)"); assert_equals(e.result, undefined, "result (delete.success for nonexistent db)");
......
...@@ -11,10 +11,13 @@ ...@@ -11,10 +11,13 @@
var db, db_got_versionchange, db2, var db, db_got_versionchange, db2,
events = [], events = [],
t = async_test(); t = async_test(),
dbname = location + '-' + t.name;
t.step(function() { t.step(function() {
var openrq = indexedDB.open('db', 3); indexedDB.deleteDatabase(dbname);
var openrq = indexedDB.open(dbname, 3);
// 1 // 1
openrq.onupgradeneeded = t.step_func(function(e) { openrq.onupgradeneeded = t.step_func(function(e) {
...@@ -55,7 +58,7 @@ ...@@ -55,7 +58,7 @@
assert_equals(db + "", "[object IDBDatabase]"); assert_equals(db + "", "[object IDBDatabase]");
assert_array_equals(db.objectStoreNames, [ "store" ]); assert_array_equals(db.objectStoreNames, [ "store" ]);
var openrq2 = indexedDB.open('db', 4); var openrq2 = indexedDB.open(dbname, 4);
// 4 // 4
openrq2.onblocked = t.step_func(function(e) { openrq2.onblocked = t.step_func(function(e) {
...@@ -102,7 +105,7 @@ ...@@ -102,7 +105,7 @@
// Cleanup // Cleanup
add_completion_callback(function(tests) { add_completion_callback(function(tests) {
if (db2) db2.close(); if (db2) db2.close();
indexedDB.deleteDatabase('db'); indexedDB.deleteDatabase(dbname);
}) })
</script> </script>
...@@ -11,10 +11,13 @@ ...@@ -11,10 +11,13 @@
var db, db_got_versionchange, db2, var db, db_got_versionchange, db2,
events = [], events = [],
t = async_test(); t = async_test(),
dbname = location + '-' + t.name;
t.step(function() { t.step(function() {
var openrq = indexedDB.open('db', 3); indexedDB.deleteDatabase(dbname);
var openrq = indexedDB.open(dbname, 3);
// 1 // 1
openrq.onupgradeneeded = t.step_func(function(e) { openrq.onupgradeneeded = t.step_func(function(e) {
...@@ -55,7 +58,7 @@ ...@@ -55,7 +58,7 @@
assert_equals(db + "", "[object IDBDatabase]"); assert_equals(db + "", "[object IDBDatabase]");
assert_array_equals(db.objectStoreNames, [ "store" ]); assert_array_equals(db.objectStoreNames, [ "store" ]);
var openrq2 = indexedDB.open('db', 4); var openrq2 = indexedDB.open(dbname, 4);
// 4 // 4
openrq2.onupgradeneeded = t.step_func(function(e) { openrq2.onupgradeneeded = t.step_func(function(e) {
...@@ -95,7 +98,7 @@ ...@@ -95,7 +98,7 @@
// Cleanup // Cleanup
add_completion_callback(function(tests) { add_completion_callback(function(tests) {
if (db2) db2.close(); if (db2) db2.close();
indexedDB.deleteDatabase('db'); indexedDB.deleteDatabase(dbname);
}) })
</script> </script>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment