I had started studying testing in nestjs and I'm stuck. I'm using e2e tests.
When I try to run the test, I get an error message:
FAIL test/category.e2e-spec.ts
● Test suite failed to run
Cannot find module 'src/auth/jwt-auth-unprotected.guard' from '../src/category/category.controller.ts'
Require stack:
C:/Users/losak/OneDrive/Desktop/back.zumzak/src/category/category.controller.ts
C:/Users/losak/OneDrive/Desktop/back.zumzak/src/category/category.module.ts
category.e2e-spec.ts
13 | } from '@nestjs/common';
14 | import { Request } from 'express';
> 15 | import { JwtAuthUnprotectedGuard } from 'src/auth/jwt-auth-unprotected.guard';
| ^
16 | import { JwtAuthGuard } from 'src/auth/jwt-auth.guard';
17 | import { CategoryService } from './category.service';
18 | import { CreateCategoryDto } from './dto/create-category.dto';
at Resolver._throwModNotFoundError (../node_modules/.pnpm/jest-resolve@28.1.3/node_modules/jest-resolve/build/resolver.js:491:11)
at Object.<anonymous> (../src/category/category.controller.ts:15:1)
Here's my spec code (category.e2e-spec.ts):
import { Test } from '@nestjs/testing';
import { CategoryModule } from '../src/category/category.module';
import * as request from 'supertest';
describe('CategoryController (e2e)', () => {
let app: INestApplication;
beforeAll(async () => {
const moduleFixture = await Test.createTestingModule({
imports: [CategoryModule],
}).compile();
app = moduleFixture.createNestApplication();
await app.init();
});
it('/ (GET)', () => {
return request(app.getHttpServer())
.get('/category')
.expect(200)
});
});
Here's my module (category.module.ts):
import { Module } from '@nestjs/common';
import { CategoryController } from './category.controller';
import { ShopModule } from 'src/shop/shop.module';
import { FileService } from 'src/file/file.service';
import { PrismaService } from 'src/prisma.service';
import { CategoryService } from './category.service';
@Module({
imports: [ShopModule],
controllers: [CategoryController],
providers: [CategoryService, PrismaService, FileService],
})
export class CategoryModule {}
And here's my controller (category.controller.ts) import:
import { Request } from 'express';
import { JwtAuthUnprotectedGuard } from 'src/auth/jwt-auth-unprotected.guard';
import { JwtAuthGuard } from 'src/auth/jwt-auth.guard';
import { CategoryService } from './category.service';
import { CreateCategoryDto } from './dto/create-category.dto';
import { ParamsCategoryDto } from './dto/params-category.dto';
import { ParamsSearchDto } from './dto/params-search.dto';
import { UpdateCategoryDto } from './dto/update-category.dto';
What should I do?