fix: #9973, ignore if assigning to same parent

This commit is contained in:
Barış Soner Uşaklı
2021-11-04 11:45:06 -04:00
parent fb0588576d
commit 66e7cdac7a
2 changed files with 23 additions and 0 deletions

View File

@@ -432,6 +432,26 @@ describe('Categories', () => {
});
});
it('should not remove category from parent if parent is set again to same category', async () => {
const parentCat = await Categories.create({ name: 'parent', description: 'poor parent' });
const updateData = {};
updateData[cid] = {
parentCid: parentCat.cid,
};
await Categories.update(updateData);
let data = await Categories.getCategoryData(cid);
assert.equal(data.parentCid, updateData[cid].parentCid);
let childrenCids = await db.getSortedSetRange(`cid:${parentCat.cid}:children`, 0, -1);
assert(childrenCids.includes(String(cid)));
// update again to same parent
await Categories.update(updateData);
data = await Categories.getCategoryData(cid);
assert.equal(data.parentCid, updateData[cid].parentCid);
childrenCids = await db.getSortedSetRange(`cid:${parentCat.cid}:children`, 0, -1);
assert(childrenCids.includes(String(cid)));
});
it('should purge category', (done) => {
Categories.create({
name: 'purge me',