如何解决Jest 和 Typescript:无法检查对象是否是类的实例
我需要检查该方法是否正在返回一个类的实例,但我在这里有点迷茫。
我在运行测试时得到 ReferenceError
。
Mapper.spec.js:
import { SetConfigurationRequestModel } from '../../usecases/Models/SetConfigurationRequestModel'
import { ISetConfigurationRequest } from '../requests/ISetConfigurationRequest'
import { Mapper } from './Mapper'
describe('Helpers/Mappers',() => {
describe('cfgRequest2RequestModel',() => {
test('should exist',() => {
const sut = new Mapper()
expect(sut.cfgRequest2RequestModel).toBeTruthy()
})
test('should be a method',() => {
const sut = new Mapper()
expect(typeof sut.cfgRequest2RequestModel).toBe('function')
})
test('should return a RequestModel',() => {
const sut = new Mapper()
const fakeRequest = makeFakeRequest()
const requestModel = sut.cfgRequest2RequestModel(fakeRequest)
expect(requestModel).toBeInstanceOf(SetConfigurationRequestModel)
})
})
})
Mapper.js:
import { SetConfigurationRequestModel } from '../../usecases/Models/SetConfigurationRequestModel'
import { ISetConfigurationRequest } from '../requests/ISetConfigurationRequest'
export class Mapper {
cfgRequest2RequestModel (request: ISetConfigurationRequest): object {
const request2 = new SetConfigurationRequestModel()
return request2
}
}
玩笑输出:
FAIL src/delivery/helpers/mappers.spec.ts
● Helpers/Mappers › cfgRequest2RequestModel › should return a RequestModel
ReferenceError: SetConfigurationRequestModel is not defined
4 | export class Mapper {
5 | cfgRequest2RequestModel (request: ISetConfigurationRequest): object {
> 6 | const request2 = new SetConfigurationRequestModel()
| ^
7 | return request2
8 | }
9 | }
at Mapper.cfgRequest2RequestModel (src/delivery/helpers/Mapper.ts:6:22)
at Object.<anonymous> (src/delivery/helpers/mappers.spec.ts:42:32)```
解决方法
问题与代码无关。
以防万一有人遇到同样的情况,请在 jest 命令中添加 --no-cache
选项。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。