commit 60befe52e4fec76ff7cbe6c169510661d443a971
parent 2b9ef26c61aab43bd08ecec04cc1029f050f5232
Author: Adomas VenĨkauskas <adomas.ven@gmail.com>
Date: Thu, 8 Dec 2016 12:16:44 +0200
Remove database closed errors in sync tests
Diffstat:
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/test/tests/syncRunnerTest.js b/test/tests/syncRunnerTest.js
@@ -556,6 +556,18 @@ describe("Zotero.Sync.Runner", function () {
})
describe("#sync()", function () {
+ // Notifier is triggered without waiting for async actions to finish, which
+ // fires off database queries after its been closed.
+ var observerTriggerDeferred;
+ beforeEach(function() {
+ observerTriggerDeferred = Zotero.Promise.defer();
+ sinon.stub(Zotero.Notifier, 'trigger',
+ (e) => {if (e == 'finish') observerTriggerDeferred.resolve(); return Zotero.Promise.resolve()});
+ });
+ afterEach(function* () {
+ yield observerTriggerDeferred.promise;
+ Zotero.Notifier.trigger.restore();
+ });
it("should perform a sync across all libraries and update library versions", function* () {
setResponse('keyInfo.fullAccess');
setResponse('userGroups.groupVersions');
@@ -946,7 +958,18 @@ describe("Zotero.Sync.Runner", function () {
describe("Error Handling", function () {
var win;
- afterEach(function () {
+ // Notifier is triggered without waiting for async actions to finish, which
+ // fires off database queries after its been closed.
+ var observerTriggerDeferred;
+ beforeEach(function() {
+ observerTriggerDeferred = Zotero.Promise.defer();
+ sinon.stub(Zotero.Notifier, 'trigger',
+ (e) => {if (e == 'finish') observerTriggerDeferred.resolve(); return Zotero.Promise.resolve()});
+ });
+
+ afterEach(function* () {
+ yield observerTriggerDeferred.promise;
+ Zotero.Notifier.trigger.restore();
if (win) {
win.close();
}