|
|
@@ -1,143 +0,0 @@
|
|
|
-import mongoose from 'mongoose';
|
|
|
-
|
|
|
-import { getMongoUri, mongoOptions } from '~/server/util/mongoose-utils';
|
|
|
-
|
|
|
-// check env
|
|
|
-if (process.env.NODE_ENV !== 'test') {
|
|
|
- throw new Error("'process.env.NODE_ENV' must be 'test'");
|
|
|
-}
|
|
|
-
|
|
|
-module.exports = async () => {
|
|
|
- await mongoose.connect(getMongoUri(), mongoOptions);
|
|
|
-
|
|
|
- // drop database
|
|
|
- await mongoose.connection.dropDatabase();
|
|
|
-
|
|
|
- // init DB
|
|
|
- const pageCollection = mongoose.connection.collection('pages');
|
|
|
- const userCollection = mongoose.connection.collection('users');
|
|
|
- const userGroupCollection = mongoose.connection.collection('usergroups');
|
|
|
- const userGroupRelationsCollection =
|
|
|
- mongoose.connection.collection('usergrouprelations');
|
|
|
-
|
|
|
- // create global user & rootPage
|
|
|
- const globalUser = (
|
|
|
- await userCollection.insertMany([
|
|
|
- {
|
|
|
- name: 'globalUser',
|
|
|
- username: 'globalUser',
|
|
|
- email: 'globalUser@example.com',
|
|
|
- },
|
|
|
- ])
|
|
|
- )[0];
|
|
|
- const gGroupUserId1 = new mongoose.Types.ObjectId();
|
|
|
- const gGroupUserId2 = new mongoose.Types.ObjectId();
|
|
|
- const gGroupUserId3 = new mongoose.Types.ObjectId();
|
|
|
-
|
|
|
- await userCollection.insertMany([
|
|
|
- {
|
|
|
- name: 'v5DummyUser1',
|
|
|
- username: 'v5DummyUser1',
|
|
|
- email: 'v5DummyUser1@example.com',
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'v5DummyUser2',
|
|
|
- username: 'v5DummyUser2',
|
|
|
- email: 'v5DummyUser2@example.com',
|
|
|
- },
|
|
|
- {
|
|
|
- _id: gGroupUserId1,
|
|
|
- name: 'gGroupUser1',
|
|
|
- username: 'gGroupUser1',
|
|
|
- email: 'gGroupUser1@example.com',
|
|
|
- },
|
|
|
- {
|
|
|
- _id: gGroupUserId2,
|
|
|
- name: 'gGroupUser2',
|
|
|
- username: 'gGroupUser2',
|
|
|
- email: 'gGroupUser2@example.com',
|
|
|
- },
|
|
|
- {
|
|
|
- _id: gGroupUserId3,
|
|
|
- name: 'gGroupUser3',
|
|
|
- username: 'gGroupUser3',
|
|
|
- email: 'gGroupUser3@example.com',
|
|
|
- },
|
|
|
- ]);
|
|
|
- const gGroupIdIsolate = new mongoose.Types.ObjectId();
|
|
|
- const gGroupIdA = new mongoose.Types.ObjectId();
|
|
|
- const gGroupIdB = new mongoose.Types.ObjectId();
|
|
|
- const gGroupIdC = new mongoose.Types.ObjectId();
|
|
|
- await userGroupCollection.insertMany([
|
|
|
- {
|
|
|
- _id: gGroupIdIsolate,
|
|
|
- name: 'globalGroupIsolate',
|
|
|
- },
|
|
|
- {
|
|
|
- _id: gGroupIdA,
|
|
|
- name: 'globalGroupA',
|
|
|
- },
|
|
|
- {
|
|
|
- _id: gGroupIdB,
|
|
|
- name: 'globalGroupB',
|
|
|
- parent: gGroupIdA,
|
|
|
- },
|
|
|
- {
|
|
|
- _id: gGroupIdC,
|
|
|
- name: 'globalGroupC',
|
|
|
- parent: gGroupIdB,
|
|
|
- },
|
|
|
- ]);
|
|
|
- await userGroupRelationsCollection.insertMany([
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdIsolate,
|
|
|
- relatedUser: gGroupUserId1,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdIsolate,
|
|
|
- relatedUser: gGroupUserId2,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdA,
|
|
|
- relatedUser: gGroupUserId1,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdA,
|
|
|
- relatedUser: gGroupUserId2,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdA,
|
|
|
- relatedUser: gGroupUserId3,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdB,
|
|
|
- relatedUser: gGroupUserId2,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdB,
|
|
|
- relatedUser: gGroupUserId3,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- {
|
|
|
- relatedGroup: gGroupIdC,
|
|
|
- relatedUser: gGroupUserId3,
|
|
|
- createdAt: new Date(),
|
|
|
- },
|
|
|
- ]);
|
|
|
- await pageCollection.insertMany([
|
|
|
- {
|
|
|
- path: '/',
|
|
|
- grant: 1,
|
|
|
- creator: globalUser,
|
|
|
- lastUpdateUser: globalUser,
|
|
|
- },
|
|
|
- ]);
|
|
|
-
|
|
|
- await mongoose.disconnect();
|
|
|
-};
|