|
@@ -854,38 +854,38 @@ describe('PageService page operations with non-public pages', () => {
|
|
|
});
|
|
});
|
|
|
describe('Delete multiple pages with grant USER_GROUP', () => {
|
|
describe('Delete multiple pages with grant USER_GROUP', () => {
|
|
|
test('should be able to delete all descendants except page with GRANT_RESTRICTED', async() => {
|
|
test('should be able to delete all descendants except page with GRANT_RESTRICTED', async() => {
|
|
|
- const pathT = '/npdel3_top';
|
|
|
|
|
- const path1 = '/npdel3_top/npdel4_ug';
|
|
|
|
|
- const path2 = '/npdel3_top/npdel4_ug/npdel5_ug';
|
|
|
|
|
- const pageT = await Page.findOne({ path: pathT, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdA }); // A
|
|
|
|
|
- const page1 = await Page.findOne({ path: path1, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdB }); // B
|
|
|
|
|
- const page2 = await Page.findOne({ path: path2, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdC }); // C
|
|
|
|
|
- const pageR = await Page.findOne({ path: path1, grant: Page.GRANT_RESTRICTED }); // Restricted
|
|
|
|
|
- expect(pageT).toBeTruthy();
|
|
|
|
|
- expect(page1).toBeTruthy();
|
|
|
|
|
- expect(page2).toBeTruthy();
|
|
|
|
|
- expect(pageR).toBeTruthy();
|
|
|
|
|
-
|
|
|
|
|
- const isRecursively = true;
|
|
|
|
|
- await deletePage(pageT, npDummyUser1, {}, isRecursively);
|
|
|
|
|
-
|
|
|
|
|
- const pageTN = await Page.findOne({ path: pathT, grant: { $ne: Page.GRANT_RESTRICTED } }); // A should not exist
|
|
|
|
|
- const page1N = await Page.findOne({ path: path1, grant: { $ne: Page.GRANT_RESTRICTED } }); // B should not exist
|
|
|
|
|
- const page2N = await Page.findOne({ path: path2, grant: { $ne: Page.GRANT_RESTRICTED } }); // C should not exist
|
|
|
|
|
- const _pageT = await Page.findOne({ path: `/trash${pathT}`, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdA }); // A
|
|
|
|
|
- const _page1 = await Page.findOne({ path: `/trash${path1}`, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdB }); // B
|
|
|
|
|
- const _page2 = await Page.findOne({ path: `/trash${path2}`, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdC }); // C
|
|
|
|
|
- const _pageR = await Page.findOne({ path: path1, grant: Page.GRANT_RESTRICTED }); // Restricted
|
|
|
|
|
- expect(pageTN).toBeNull();
|
|
|
|
|
- expect(page1N).toBeNull();
|
|
|
|
|
- expect(page2N).toBeNull();
|
|
|
|
|
|
|
+ const _pathT = '/npdel3_top';
|
|
|
|
|
+ const _path1 = '/npdel3_top/npdel4_ug';
|
|
|
|
|
+ const _path2 = '/npdel3_top/npdel4_ug/npdel5_ug';
|
|
|
|
|
+ const _pageT = await Page.findOne({ path: _pathT, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdA }); // A
|
|
|
|
|
+ const _page1 = await Page.findOne({ path: _path1, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdB }); // B
|
|
|
|
|
+ const _page2 = await Page.findOne({ path: _path2, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdC }); // C
|
|
|
|
|
+ const _pageR = await Page.findOne({ path: _path1, grant: Page.GRANT_RESTRICTED }); // Restricted
|
|
|
expect(_pageT).toBeTruthy();
|
|
expect(_pageT).toBeTruthy();
|
|
|
expect(_page1).toBeTruthy();
|
|
expect(_page1).toBeTruthy();
|
|
|
expect(_page2).toBeTruthy();
|
|
expect(_page2).toBeTruthy();
|
|
|
expect(_pageR).toBeTruthy();
|
|
expect(_pageR).toBeTruthy();
|
|
|
- expect(_pageT.status).toBe(Page.STATUS_DELETED);
|
|
|
|
|
- expect(_page1.status).toBe(Page.STATUS_DELETED);
|
|
|
|
|
- expect(_page2.status).toBe(Page.STATUS_DELETED);
|
|
|
|
|
|
|
+
|
|
|
|
|
+ const isRecursively = true;
|
|
|
|
|
+ await deletePage(_pageT, npDummyUser1, {}, isRecursively);
|
|
|
|
|
+
|
|
|
|
|
+ const pageTNotExist = await Page.findOne({ path: _pathT, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdA }); // A should not exist
|
|
|
|
|
+ const page1NotExist = await Page.findOne({ path: _path1, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdB }); // B should not exist
|
|
|
|
|
+ const page2NotExist = await Page.findOne({ path: _path2, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdC }); // C should not exist
|
|
|
|
|
+ const pageT = await Page.findOne({ path: `/trash${_pathT}`, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdA }); // A
|
|
|
|
|
+ const page1 = await Page.findOne({ path: `/trash${_path1}`, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdB }); // B
|
|
|
|
|
+ const page2 = await Page.findOne({ path: `/trash${_path2}`, grant: Page.GRANT_USER_GROUP, grantedGroup: groupIdC }); // C
|
|
|
|
|
+ const pageR = await Page.findOne({ path: _path1, grant: Page.GRANT_RESTRICTED }); // Restricted
|
|
|
|
|
+ expect(page1NotExist).toBeNull();
|
|
|
|
|
+ expect(pageTNotExist).toBeNull();
|
|
|
|
|
+ expect(page2NotExist).toBeNull();
|
|
|
|
|
+ expect(pageT).toBeTruthy();
|
|
|
|
|
+ expect(page1).toBeTruthy();
|
|
|
|
|
+ expect(page2).toBeTruthy();
|
|
|
|
|
+ expect(pageR).toBeTruthy();
|
|
|
|
|
+ expect(pageT.status).toBe(Page.STATUS_DELETED);
|
|
|
|
|
+ expect(page1.status).toBe(Page.STATUS_DELETED);
|
|
|
|
|
+ expect(page2.status).toBe(Page.STATUS_DELETED);
|
|
|
});
|
|
});
|
|
|
});
|
|
});
|
|
|
|
|
|