company.e2e-spec.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import { Test, TestingModule } from '@nestjs/testing';
  2. import { INestApplication } from '@nestjs/common';
  3. import * as request from 'supertest';
  4. import { AppModule } from '../../src/app.module';
  5. import { ValidationPipe } from '@nestjs/common';
  6. import { TransformInterceptor } from '../../src/presentation/interceptors/transform.interceptor';
  7. describe('CompanyController (e2e)', () => {
  8. let app: INestApplication;
  9. beforeEach(async () => {
  10. const moduleFixture: TestingModule = await Test.createTestingModule({
  11. imports: [AppModule],
  12. }).compile();
  13. app = moduleFixture.createNestApplication();
  14. // Appliquer les mêmes pipes et intercepteurs que dans l'application principale
  15. app.useGlobalPipes(
  16. new ValidationPipe({
  17. whitelist: true,
  18. transform: true,
  19. }),
  20. );
  21. app.useGlobalInterceptors(new TransformInterceptor());
  22. await app.init();
  23. });
  24. afterEach(async () => {
  25. await app.close();
  26. });
  27. it('/api/companies (GET)', () => {
  28. return request(app.getHttpServer())
  29. .get('/api/companies')
  30. .expect(200)
  31. .expect((res) => {
  32. expect(Array.isArray(res.body)).toBe(true);
  33. });
  34. });
  35. // Ajoutez d'autres tests e2e selon vos besoins
  36. });