Lee*_*Moe 6 javascript mocking node.js jestjs
我有这个简化的 Jest 测试:
import login from "../../src/controller/auth/login";
import findUserByEmail from "../../src/api/db/find-user-by-email";
jest.mock("../../src/api/db/find-user-by-email");
const mockedfindUserByEmail = findUserByEmail as jest.Mocked<typeof findUserByEmail>;
describe("Login API", () => {
test('should return 401', async () => {
const req = {
email: "email@domain.com",
password: "password"
};
mockedfindUserByEmail.mockImplementation(async () => false)
expect(await login(req).status).toBe(401);
});
});
Run Code Online (Sandbox Code Playgroud)
我从文档中得到了这个模拟。当我不模拟时,测试工作正常,因为login模块连接到数据库。但是当我使用上面的模拟时我得到:
TypeError: findUserByEmail.mockImplementation is not a function
Run Code Online (Sandbox Code Playgroud)
你能帮我吗?
按电子邮件查找用户文件:
import { User } from "../../entities/main/user";
const db: any = require("../../db/models");
export default async (email: string)
: Promise<User> => {
return await db.user.findOne({
where: { email },
raw: true,
});
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11520 次 |
| 最近记录: |