v5.user-groups.test.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import mongoose from 'mongoose';
  2. import { getInstance } from '../setup-crowi';
  3. describe('UserGroupService', () => {
  4. // let dummyUser1;
  5. // let dummyUser2;
  6. let crowi;
  7. let UserGroup;
  8. const groupId1 = new mongoose.Types.ObjectId();
  9. const groupId2 = new mongoose.Types.ObjectId();
  10. const groupId3 = new mongoose.Types.ObjectId();
  11. beforeAll(async() => {
  12. crowi = await getInstance();
  13. await crowi.configManager.updateConfigsInTheSameNamespace('crowi', { 'app:isV5Compatible': true });
  14. UserGroup = mongoose.model('UserGroup');
  15. /*
  16. * Common
  17. */
  18. // dummyUser1 = await UserGroup.findOne({ username: 'v5DummyUser1' });
  19. // dummyUser2 = await UserGroup.findOne({ username: 'v5DummyUser2' });
  20. // xssSpy = jest.spyOn(crowi.xss, 'process').mockImplementation(path => path);
  21. // Create Groups
  22. await UserGroup.insertMany([
  23. // no parent
  24. {
  25. _id: groupId1,
  26. name: 'v5_group1',
  27. description: 'description1',
  28. },
  29. // no parent
  30. {
  31. _id: groupId2,
  32. name: 'v5_group2',
  33. description: 'description2',
  34. },
  35. {
  36. _id: groupId3,
  37. name: 'v5_group3',
  38. parent: groupId1,
  39. description: 'description3',
  40. },
  41. ]);
  42. });
  43. /*
  44. * Update UserGroup
  45. */
  46. test('Can update user group basic info', async() => {
  47. const userGroup = await UserGroup.findOne({ name: 'v5_group1' });
  48. const newGroupName = 'v5_group1_new';
  49. const newGroupDescription = 'description1_new';
  50. const newParentId = groupId2;
  51. const updatedUserGroup = await crowi.userGroupService.updateGroup(userGroup.id, newGroupName, newGroupDescription, newParentId);
  52. expect(updatedUserGroup.name).toBe(newGroupName);
  53. expect(updatedUserGroup.description).toBe(newGroupDescription);
  54. expect(updatedUserGroup.parent).toStrictEqual(newParentId);
  55. });
  56. });