summaryrefslogtreecommitdiffstats
path: root/browser/components/migration/tests/unit/test_MigrationUtils_timedRetry.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/migration/tests/unit/test_MigrationUtils_timedRetry.js')
-rw-r--r--browser/components/migration/tests/unit/test_MigrationUtils_timedRetry.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/browser/components/migration/tests/unit/test_MigrationUtils_timedRetry.js b/browser/components/migration/tests/unit/test_MigrationUtils_timedRetry.js
new file mode 100644
index 0000000000..12ca5a7b1d
--- /dev/null
+++ b/browser/components/migration/tests/unit/test_MigrationUtils_timedRetry.js
@@ -0,0 +1,29 @@
+"use strict";
+
+let tmpFile = FileUtils.getDir("TmpD", [], true);
+let dbConn;
+
+add_task(async function setup() {
+ tmpFile.append("TestDB");
+ dbConn = await Sqlite.openConnection({ path: tmpFile.path });
+
+ registerCleanupFunction(async () => {
+ await dbConn.close();
+ await IOUtils.remove(tmpFile.path);
+ });
+});
+
+add_task(async function testgetRowsFromDBWithoutLocksRetries() {
+ let deferred = PromiseUtils.defer();
+ let promise = MigrationUtils.getRowsFromDBWithoutLocks(
+ tmpFile.path,
+ "Temp DB",
+ "SELECT * FROM moz_temp_table",
+ deferred.promise
+ );
+ await new Promise(resolve => do_timeout(50, resolve));
+ dbConn
+ .execute("CREATE TABLE moz_temp_table (id INTEGER PRIMARY KEY)")
+ .then(deferred.resolve);
+ await promise;
+});