I have followed the unit test example but I am unable to run a test, i don't know why it doesn't work. I have this following error : Cannot find module 'src/Application/Auth/Command/LoginCommandHandler' from 'LoginCommandHandler.spec.ts'
but my handler is correctly imported.
Thanks for your help.
Here is my unit test:
import { LoginCommandHandler } from 'src/Application/Auth/Command/LoginCommandHandler';
import { UserRepository } from 'src/Infrastructure/User/Repository/UserRepository';
import { EncryptionAdapter } from 'src/Infrastructure/Adapter/EncryptionAdapter';
// ...
const module: TestingModule = await Test.createTestingModule({
providers: [LoginCommandHandler, UserRepository, EncryptionAdapter],
}).compile();
userRepository = module.get(UserRepository);
encryptionAdapter = module.get(EncryptionAdapter);
handler = new LoginCommandHandler(userRepository, encryptionAdapter);
Here is my src/Application/Auth/Command/LoginCommandHandler/LoginCommandHandler :
export class LoginCommandHandler {
constructor(
@Inject('IUserRepository')
private readonly userRepository: IUserRepository,
@Inject('IEncryptionAdapter')
private readonly encryptionAdapter: IEncryptionAdapter,
) {}
// ...
And here is my AuthModule :
@Module({
imports: [
// ...
TypeOrmModule.forFeature([User]),
],
providers: [
// ...
{ provide: 'IUserRepository', useClass: UserRepository },
{ provide: 'IEncryptionAdapter', useClass: EncryptionAdapter },
LoginCommandHandler,
],
})
export class AuthModule {}