commit e573ad886f0be369564dcdf57a87f58c218a930f
parent 3ef3d943b01dcc64c27e7b0c1de67f15c49c1778
Author: Dan Stillman <dstillman@zotero.org>
Date: Fri, 27 May 2016 01:30:03 -0400
Update recognizePDF tests
- Add test for recogning within a collection (follow-up from #1015)
- Update/remove some outdated code
These tests are still skipped by default, since we don't want to actually do
lookups on every test run.
Diffstat:
1 file changed, 34 insertions(+), 24 deletions(-)
diff --git a/test/tests/recognizePDFTest.js b/test/tests/recognizePDFTest.js
@@ -1,42 +1,54 @@
describe.skip("PDF Recognition", function() {
- Components.utils.import("resource://gre/modules/FileUtils.jsm");
-
var win;
- before(function() {
+
+ before(function* () {
this.timeout(60000);
- // Load Zotero pane, install PDF tools, and load the
- // translators
- return Zotero.Promise.all([loadZoteroPane().then(function(w) {
- win = w;
- }), installPDFTools()]);
+ // Load Zotero pane and install PDF tools
+ yield Zotero.Promise.all([
+ loadZoteroPane().then(w => win = w),
+ installPDFTools(),
+ ]);
+ });
+
+ beforeEach(function* () {
+ yield selectLibrary(win);
});
+
afterEach(function() {
for(let win of getWindows("chrome://zotero/content/pdfProgress.xul")) {
win.close();
}
});
+
after(function() {
win.close();
});
- it("should recognize a PDF with a DOI", function* () {
+ it("should recognize a PDF with a DOI within a collection", function* () {
this.timeout(30000);
// Import the PDF
var testdir = getTestDataDirectory();
testdir.append("recognizePDF_test_DOI.pdf");
- var item = yield Zotero.Attachments.importFromFile({
- file: testdir
+
+ var col = yield createDataObject('collection');
+ yield waitForItemsLoad(win);
+
+ var attachment = yield Zotero.Attachments.importFromFile({
+ file: testdir,
+ collections: [col.id]
});
// Recognize the PDF
- win.ZoteroPane.selectItem(item.id);
win.Zotero_RecognizePDF.recognizeSelected();
- return waitForItemEvent("add").then(function(ids) {
- var item = Zotero.Items.get(ids[0]);
- assert.equal(item.getField("title"), "Shaping the Research Agenda");
- assert.equal(item.getField("libraryCatalog"), "CrossRef");
- });
+ var ids = yield waitForItemEvent("add");
+ yield waitForNotifierEvent('add', 'collection-item')
+
+ var item = Zotero.Items.get(ids[0]);
+ assert.equal(item.getField("title"), "Shaping the Research Agenda");
+ assert.equal(item.getField("libraryCatalog"), "CrossRef");
+ assert.equal(attachment.parentID, item.id);
+ assert.isTrue(col.hasItem(item.id));
});
it("should recognize a PDF without a DOI", function* () {
@@ -49,15 +61,13 @@ describe.skip("PDF Recognition", function() {
var item = yield Zotero.Attachments.importFromFile({
file: testdir
});
-
+
// Recognize the PDF
- win.ZoteroPane.selectItem(item.id);
win.Zotero_RecognizePDF.recognizeSelected();
- return waitForItemEvent("add").then(function(ids) {
- var item = Zotero.Items.get(ids[0]);
- assert.equal(item.getField("title"), "Scaling study of an improved fermion action on quenched lattices");
- assert.equal(item.getField("libraryCatalog"), "Google Scholar");
- });
+ var ids = yield waitForItemEvent("add");
+ var item = Zotero.Items.get(ids[0]);
+ assert.equal(item.getField("title"), "Scaling study of an improved fermion action on quenched lattices");
+ assert.equal(item.getField("libraryCatalog"), "Google Scholar");
});
});
\ No newline at end of file