Fix sync error after changing child item to top-level
This commit is contained in:
parent
a7ea92fd52
commit
a8ea8656d2
3 changed files with 26 additions and 0 deletions
|
@ -138,6 +138,7 @@ Zotero.DataObjectUtilities = {
|
|||
break;
|
||||
|
||||
case 'deleted':
|
||||
case 'parentItem':
|
||||
target[i] = false;
|
||||
break;
|
||||
|
||||
|
|
|
@ -201,6 +201,19 @@ describe("Zotero.Collection", function() {
|
|||
})
|
||||
})
|
||||
|
||||
describe("#toJSON()", function () {
|
||||
it("should set 'parentCollection' to false when cleared", function* () {
|
||||
var col1 = yield createDataObject('collection');
|
||||
var col2 = yield createDataObject('collection', { parentID: col1.id });
|
||||
// Create initial JSON with parentCollection
|
||||
var patchBase = col2.toJSON();
|
||||
// Clear parent collection and regenerate JSON
|
||||
col2.parentID = false;
|
||||
var json = col2.toJSON({ patchBase });
|
||||
assert.isFalse(json.parentCollection);
|
||||
});
|
||||
});
|
||||
|
||||
describe("#getDescendents()", function () {
|
||||
var collection0, collection1, collection2, collection3, item1, item2, item3;
|
||||
|
||||
|
|
|
@ -1138,6 +1138,18 @@ describe("Zotero.Item", function () {
|
|||
assert.isUndefined(json.title);
|
||||
assert.strictEqual(json.deleted, 1);
|
||||
})
|
||||
|
||||
it("should set 'parentItem' to false when cleared", function* () {
|
||||
var item = yield createDataObject('item');
|
||||
var note = new Zotero.Item('note');
|
||||
note.parentID = item.id;
|
||||
// Create initial JSON with parentItem
|
||||
var patchBase = note.toJSON();
|
||||
// Clear parent item and regenerate JSON
|
||||
note.parentID = false;
|
||||
var json = note.toJSON({ patchBase });
|
||||
assert.isFalse(json.parentItem);
|
||||
});
|
||||
})
|
||||
})
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue