Fix various cases of saving items to selected collection
This changes Zotero.Translate.Base.translate() to take an options object (in order to take a 'collections' parameter, which is passed to the Zotero.Translate.ItemSaver constructor). The old parameters are still supported with a deprecation warning, and there may be other places that still need to be updated.
This commit is contained in:
parent
22b1fa8cf8
commit
08cb63f66d
8 changed files with 181 additions and 59 deletions
51
test/tests/browserTest.js
Normal file
51
test/tests/browserTest.js
Normal file
|
@ -0,0 +1,51 @@
|
|||
"use strict";
|
||||
|
||||
describe("Zotero_Browser", function () {
|
||||
var win;
|
||||
before(function* () {
|
||||
win = yield loadBrowserWindow();
|
||||
});
|
||||
after(function* () {
|
||||
win.close();
|
||||
});
|
||||
|
||||
it("should save webpage item to current collection", function* () {
|
||||
var uri = OS.Path.join(getTestDataDirectory().path, "snapshot", "index.html");
|
||||
var deferred = Zotero.Promise.defer();
|
||||
win.addEventListener('pageshow', () => deferred.resolve());
|
||||
win.loadURI(uri);
|
||||
yield deferred.promise;
|
||||
|
||||
yield loadZoteroPane(win);
|
||||
var collection = yield createDataObject('collection');
|
||||
|
||||
var promise = waitForItemEvent('add');
|
||||
yield win.Zotero_Browser.scrapeThisPage();
|
||||
var ids = yield promise;
|
||||
var items = Zotero.Items.get(ids);
|
||||
assert.lengthOf(items, 1);
|
||||
assert.equal(Zotero.ItemTypes.getName(items[0].itemTypeID), 'webpage');
|
||||
assert.isTrue(collection.hasItem(items[0].id));
|
||||
})
|
||||
|
||||
it("should save journalArticle to current collection", function* () {
|
||||
var uri = OS.Path.join(
|
||||
getTestDataDirectory().path, "metadata", "journalArticle-single.html"
|
||||
);
|
||||
var deferred = Zotero.Promise.defer();
|
||||
win.addEventListener('pageshow', () => deferred.resolve());
|
||||
win.loadURI(uri);
|
||||
yield deferred.promise;
|
||||
|
||||
yield loadZoteroPane(win);
|
||||
var collection = yield createDataObject('collection');
|
||||
|
||||
var promise = waitForItemEvent('add');
|
||||
yield win.Zotero_Browser.scrapeThisPage();
|
||||
var ids = yield promise;
|
||||
var items = Zotero.Items.get(ids);
|
||||
assert.lengthOf(items, 1);
|
||||
assert.equal(Zotero.ItemTypes.getName(items[0].itemTypeID), 'journalArticle');
|
||||
assert.isTrue(collection.hasItem(items[0].id));
|
||||
})
|
||||
})
|
Loading…
Add table
Add a link
Reference in a new issue