www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit e45c48a66f4782ce0d4147d822336f8d1412a564
parent 4cf4e13a7b5f2bd5959d791ce611fbdf33a2264f
Author: Simon Kornblith <simon@simonster.com>
Date:   Tue, 21 Feb 2012 18:12:19 -0500

Fix "Function complete defined in y, not in x, or definitions differ"

Diffstat:
Mchrome/content/zotero/tools/testTranslators/translatorTester.js | 30+++++++++++++-----------------
1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/chrome/content/zotero/tools/testTranslators/translatorTester.js b/chrome/content/zotero/tools/testTranslators/translatorTester.js @@ -85,21 +85,24 @@ Zotero_TranslatorTester._sanitizeItem = function(item, forSave) { if(item.attachments && item.attachments.length) { // don't actually test URI equality for (var i=0; i<item.attachments.length; i++) { - if(item.attachments[i].document) { - item.attachments[i].document = false; - } else if(item.attachments[i].url) { - item.attachments[i].url = false; + var attachment = item.attachments[i]; + if(attachment.document) { + delete attachment.document; + } + + if(attachment.url) { + delete attachment.url; + } + + if(attachment.complete) { + delete attachment.complete; } } } // remove fields to be ignored for(var j=0, n=Zotero_TranslatorTester_IGNORE_FIELDS.length; j<n; j++) { - if(forSave) { - delete item[Zotero_TranslatorTester_IGNORE_FIELDS[j]] - } else { - item[Zotero_TranslatorTester_IGNORE_FIELDS[j]] = false; - } + delete item[Zotero_TranslatorTester_IGNORE_FIELDS[j]]; } return item; @@ -444,17 +447,10 @@ Zotero_TranslatorTester.prototype._objectCompare = function(x, y) { if(y[p] || y[p] === 0) { switch(typeof(y[p])) { case 'object': - if (!this._objectCompare(y[p],x[p])) { + if (!this._objectCompare(x[p],y[p])) { return false; }; break; - case 'function': - if (typeof(x[p])=='undefined' - || (y[p].toString() != x[p].toString())) { - this._debug(this, "TranslatorTester: Function "+p+" defined in y, not in x, or definitions differ"); - return false; - } - break; default: if (y[p] != x[p] && x[p] !== false) { // special exemption: x (test item) // can have a property set to false