fx-compat: DB.executeTransaction() no longer takes generator functions
This commit is contained in:
parent
ccbc785499
commit
03242e8984
41 changed files with 319 additions and 320 deletions
|
@ -192,21 +192,21 @@ describe("Zotero.DB", function() {
|
|||
reject2 = reject;
|
||||
});
|
||||
|
||||
Zotero.DB.executeTransaction(function* () {
|
||||
yield Zotero.Promise.delay(250);
|
||||
var num = yield Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
Zotero.DB.executeTransaction(async function () {
|
||||
await Zotero.Promise.delay(250);
|
||||
var num = await Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
assert.equal(num, 0);
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
assert.ok(Zotero.DB.inTransaction());
|
||||
})
|
||||
.then(resolve1)
|
||||
.catch(reject1);
|
||||
|
||||
Zotero.DB.executeTransaction(function* () {
|
||||
var num = yield Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
Zotero.DB.executeTransaction(async function () {
|
||||
var num = await Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
assert.equal(num, 1);
|
||||
yield Zotero.Promise.delay(500);
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (2)");
|
||||
await Zotero.Promise.delay(500);
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (2)");
|
||||
assert.ok(Zotero.DB.inTransaction());
|
||||
})
|
||||
.then(resolve2)
|
||||
|
@ -231,30 +231,30 @@ describe("Zotero.DB", function() {
|
|||
});
|
||||
|
||||
// Start a transaction and have it delay
|
||||
Zotero.DB.executeTransaction(function* () {
|
||||
yield Zotero.Promise.delay(100);
|
||||
var num = yield Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
Zotero.DB.executeTransaction(async function () {
|
||||
await Zotero.Promise.delay(100);
|
||||
var num = await Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
assert.equal(num, 0);
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
assert.ok(Zotero.DB.inTransaction());
|
||||
})
|
||||
.then(resolve1)
|
||||
.catch(reject1);
|
||||
|
||||
// Start two more transactions, which should wait on the first
|
||||
Zotero.DB.executeTransaction(function* () {
|
||||
var num = yield Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
Zotero.DB.executeTransaction(async function () {
|
||||
var num = await Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
assert.equal(num, 1);
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (2)");
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (2)");
|
||||
assert.ok(Zotero.DB.inTransaction());
|
||||
})
|
||||
.then(resolve2)
|
||||
.catch(reject2);
|
||||
|
||||
Zotero.DB.executeTransaction(function* () {
|
||||
var num = yield Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
Zotero.DB.executeTransaction(async function () {
|
||||
var num = await Zotero.DB.valueQueryAsync("SELECT COUNT(*) FROM " + tmpTable);
|
||||
assert.equal(num, 2);
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (3)");
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (3)");
|
||||
// But make sure the second queued transaction doesn't start at the same time,
|
||||
// such that the first queued transaction gets closed while the second is still
|
||||
// running
|
||||
|
@ -269,8 +269,8 @@ describe("Zotero.DB", function() {
|
|||
it("should roll back on error", function* () {
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
try {
|
||||
yield Zotero.DB.executeTransaction(function* () {
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (2)");
|
||||
yield Zotero.DB.executeTransaction(async function () {
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (2)");
|
||||
throw 'Aborting transaction -- ignore';
|
||||
});
|
||||
}
|
||||
|
@ -290,8 +290,8 @@ describe("Zotero.DB", function() {
|
|||
var callbackRan = false;
|
||||
try {
|
||||
yield Zotero.DB.executeTransaction(
|
||||
function* () {
|
||||
yield Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
async function () {
|
||||
await Zotero.DB.queryAsync("INSERT INTO " + tmpTable + " VALUES (1)");
|
||||
throw 'Aborting transaction -- ignore';
|
||||
},
|
||||
{
|
||||
|
@ -331,9 +331,9 @@ describe("Zotero.DB", function() {
|
|||
var callback1Ran = false;
|
||||
var callback2Ran = false;
|
||||
try {
|
||||
yield Zotero.DB.executeTransaction(function* () {
|
||||
yield Zotero.DB.executeTransaction(
|
||||
function* () {},
|
||||
yield Zotero.DB.executeTransaction(async function () {
|
||||
await Zotero.DB.executeTransaction(
|
||||
async function () {},
|
||||
{
|
||||
waitTimeout: 100,
|
||||
onRollback: function () {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue