|
@@ -0,0 +1,65 @@
|
|
|
|
|
+import mongoose from 'mongoose';
|
|
|
|
|
+
|
|
|
|
|
+import { getInstance } from '../setup-crowi';
|
|
|
|
|
+
|
|
|
|
|
+describe('Page', () => {
|
|
|
|
|
+// ルートの下にページ作成
|
|
|
|
|
+// /a/bを作成
|
|
|
|
|
+// 子持ち空ページのパスでcreate
|
|
|
|
|
+ let crowi;
|
|
|
|
|
+ let Page;
|
|
|
|
|
+ let Revision;
|
|
|
|
|
+ let User;
|
|
|
|
|
+ let Tag;
|
|
|
|
|
+ let PageTagRelation;
|
|
|
|
|
+ let Bookmark;
|
|
|
|
|
+ let Comment;
|
|
|
|
|
+ let ShareLink;
|
|
|
|
|
+ let PageRedirect;
|
|
|
|
|
+ let xssSpy;
|
|
|
|
|
+
|
|
|
|
|
+ let rootPage;
|
|
|
|
|
+ let dummyUser1;
|
|
|
|
|
+
|
|
|
|
|
+ beforeAll(async() => {
|
|
|
|
|
+ crowi = await getInstance();
|
|
|
|
|
+ await crowi.configManager.updateConfigsInTheSameNamespace('crowi', { 'app:isV5Compatible': true });
|
|
|
|
|
+
|
|
|
|
|
+ jest.restoreAllMocks();
|
|
|
|
|
+ User = mongoose.model('User');
|
|
|
|
|
+ Page = mongoose.model('Page');
|
|
|
|
|
+ Revision = mongoose.model('Revision');
|
|
|
|
|
+ Tag = mongoose.model('Tag');
|
|
|
|
|
+ PageTagRelation = mongoose.model('PageTagRelation');
|
|
|
|
|
+ Bookmark = mongoose.model('Bookmark');
|
|
|
|
|
+ Comment = mongoose.model('Comment');
|
|
|
|
|
+ ShareLink = mongoose.model('ShareLink');
|
|
|
|
|
+ PageRedirect = mongoose.model('PageRedirect');
|
|
|
|
|
+
|
|
|
|
|
+ dummyUser1 = await User.findOne({ username: 'v5DummyUser1' });
|
|
|
|
|
+ if (dummyUser1 == null) {
|
|
|
|
|
+ dummyUser1 = await User.create({ name: 'v5DummyUser1', username: 'v5DummyUser1', email: 'v5DummyUser1@example.com' });
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ rootPage = await Page.findOne({ path: '/' });
|
|
|
|
|
+ if (rootPage == null) {
|
|
|
|
|
+ const pages = await Page.insertMany([
|
|
|
|
|
+ {
|
|
|
|
|
+ path: '/',
|
|
|
|
|
+ grant: Page.GRANT_PUBLIC,
|
|
|
|
|
+ },
|
|
|
|
|
+ ]);
|
|
|
|
|
+ rootPage = pages[0];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ });
|
|
|
|
|
+ describe('create', () => {
|
|
|
|
|
+ test('Should create single page', async() => {
|
|
|
|
|
+ const page = await Page.create('/v5_create1', 'create1', dummyUser1, {});
|
|
|
|
|
+ expect(page).toBeTruthy();
|
|
|
|
|
+ expect(page.path).toBe('/v5_create1');
|
|
|
|
|
+ expect(page.parent).toStrictEqual(rootPage._id);
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+});
|