Просмотр исходного кода

refactor rename page with isRecursively

itizawa 5 лет назад
Родитель
Сommit
65a83f8bd9
1 измененных файлов с 22 добавлено и 9 удалено
  1. 22 9
      src/test/service/page.test.js

+ 22 - 9
src/test/service/page.test.js

@@ -187,14 +187,12 @@ describe('PageService', () => {
         const redirectedFromPageRevision = await Revision.findOne({ path: '/parentForRename1' });
 
         expect(xssSpy).toHaveBeenCalled();
-        expect(renameDescendantsWithStreamSpy).toHaveBeenCalledTimes(0);
+        expect(renameDescendantsWithStreamSpy).not.toHaveBeenCalled();
         expect(pageEventSpy).toHaveBeenCalledWith('delete', parentForRename1, testUser2, socketClientId);
         expect(pageEventSpy).toHaveBeenCalledWith('create', resultPage, testUser2, socketClientId);
 
         expect(resultPage.path).toBe('/renamed1');
-        expect(resultPage.grant).toBe(1);
         expect(resultPage.updatedAt).not.toEqual(dateToUse);
-        expect(resultPage.status).toBe(Page.STATUS_PUBLISHED);
         expect(resultPage.lastUpdateUser).toEqual(testUser1._id);
 
         expect(redirectedFromPage).toBeNull();
@@ -208,14 +206,12 @@ describe('PageService', () => {
         const redirectedFromPageRevision = await Revision.findOne({ path: '/parentForRename2' });
 
         expect(xssSpy).toHaveBeenCalled();
-        expect(renameDescendantsWithStreamSpy).toHaveBeenCalledTimes(0);
+        expect(renameDescendantsWithStreamSpy).not.toHaveBeenCalled();
         expect(pageEventSpy).toHaveBeenCalledWith('delete', parentForRename2, testUser2, socketClientId);
         expect(pageEventSpy).toHaveBeenCalledWith('create', resultPage, testUser2, socketClientId);
 
         expect(resultPage.path).toBe('/renamed2');
-        expect(resultPage.grant).toBe(1);
         expect(resultPage.updatedAt).toEqual(dateToUse);
-        expect(resultPage.status).toBe(Page.STATUS_PUBLISHED);
         expect(resultPage.lastUpdateUser).toEqual(testUser2._id);
 
         expect(redirectedFromPage).toBeNull();
@@ -229,14 +225,12 @@ describe('PageService', () => {
         const redirectedFromPageRevision = await Revision.findOne({ path: '/parentForRename3' });
 
         expect(xssSpy).toHaveBeenCalled();
-        expect(renameDescendantsWithStreamSpy).toHaveBeenCalledTimes(0);
+        expect(renameDescendantsWithStreamSpy).not.toHaveBeenCalled();
         expect(pageEventSpy).toHaveBeenCalledWith('delete', parentForRename3, testUser2, socketClientId);
         expect(pageEventSpy).toHaveBeenCalledWith('create', resultPage, testUser2, socketClientId);
 
         expect(resultPage.path).toBe('/renamed3');
-        expect(resultPage.grant).toBe(1);
         expect(resultPage.updatedAt).not.toEqual(dateToUse);
-        expect(resultPage.status).toBe(Page.STATUS_PUBLISHED);
         expect(resultPage.lastUpdateUser).toEqual(testUser1._id);
 
         expect(redirectedFromPage).not.toBeNull();
@@ -248,6 +242,25 @@ describe('PageService', () => {
         expect(redirectedFromPageRevision.body).toBe('redirect /renamed3');
       });
 
+      test('rename page with isRecursively', async() => {
+
+        const resultPage = await crowi.pageService.renamePage(parentForRename4, '/renamed4', testUser2, { }, true);
+        const redirectedFromPage = await Page.findOne({ path: '/parentForRename4' });
+        const redirectedFromPageRevision = await Revision.findOne({ path: '/parentForRename4' });
+
+        expect(xssSpy).toHaveBeenCalled();
+        expect(renameDescendantsWithStreamSpy).toHaveBeenCalled();
+        expect(pageEventSpy).toHaveBeenCalledWith('delete', parentForRename4, testUser2, socketClientId);
+        expect(pageEventSpy).toHaveBeenCalledWith('create', resultPage, testUser2, socketClientId);
+
+        expect(resultPage.path).toBe('/renamed4');
+        expect(resultPage.updatedAt).not.toEqual(dateToUse);
+        expect(resultPage.lastUpdateUser).toEqual(testUser1._id);
+
+        expect(redirectedFromPage).toBeNull();
+        expect(redirectedFromPageRevision).toBeNull();
+      });
+
     });
 
     test('renameDescendants()', () => {