Advertisement
Guest User

Untitled

a guest
May 20th, 2019
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.81 KB | None | 0 0
  1. import { AdminService } from "../admin.service";
  2. import { Test, TestingModule } from '@nestjs/testing';
  3. import { User } from "../../entity/User";
  4. import { getRepositoryToken } from "@nestjs/typeorm";
  5. import { async } from "rxjs/internal/scheduler/async";
  6. import { BanStatus } from "../../entity/ban-status";
  7. import { PostEntity } from "../../entity/Post";
  8. import { FlagPost } from "../../entity/Flag";
  9.  
  10. describe('AuthService', () => {
  11. let service: AdminService;
  12.  
  13. let userRepo = {
  14. findOne: () => { },
  15. save: (_) => { }
  16. }
  17. let banRepo = {
  18. findOne: () => { },
  19. save: (_) => { }
  20. }
  21. beforeEach(async () => {
  22. const module: TestingModule = await Test.createTestingModule({
  23. providers: [
  24. AdminService, BanStatus, PostEntity, FlagPost,
  25. {
  26. provide: getRepositoryToken(User),
  27. useValue: userRepo,
  28. },
  29. {
  30. provide: getRepositoryToken(BanStatus),
  31. useValue: banRepo,
  32. },
  33.  
  34. ],
  35. }).compile();
  36.  
  37. service = module.get<AdminService>(AdminService);
  38. });
  39.  
  40. describe('banUser', async () => {
  41. it('should call findOne ones', async () => {
  42.  
  43. const user = {
  44. id: '3',
  45. email: 'asdf@abv.bg',
  46. username: 'Pesho',
  47. password: '123450',
  48. isDeleted: false,
  49. banStatus: { id: '1', description: 'asfasd', expDate: '123.23.123', isBanned: false }
  50. }
  51.  
  52. const spyOnBan = jest.spyOn(banRepo, 'save');
  53. await service.banUser('1','12341');
  54.  
  55.  
  56. expect(spyOnBan).toHaveBeenCalledTimes(1);
  57. spyOnBan.mockRestore();
  58. })
  59. })
  60. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement