【发布时间】:2017-11-28 11:58:07
【问题描述】:
我在模拟 async/await 函数时遇到了一个奇怪的问题。好吧,我有一个简单的 api.js 文件,它使用 fetch 调用来获取一些数据。我试图模拟这个电话,但到目前为止没有运气
api.js
export async function getUsers() {
const resp = await fetch(`/users`);
const data = await resp.json();
return data.message;
}
__mock__/api.js
const users = [
"Jhon",
"Paul",
"Ringo"
];
export default function getUsers() {
return new Promise((resolve, reject) => {
process.nextTick(() => {
resolve(users)
});
});
}
api.test.js
jest.mock('./api');
import {getUsers} from "./api";
test("user list is an array", async () => {
expect.assertions(1);
const resp = await getUsers();
expect(Array.isArray(resp)).toBe(true);
});
但我不断收到未定义的响应。
【问题讨论】:
-
你解决了吗?我有类似的问题
-
不应该是
export function getUsers()而不是export default function getUsers()在你的__mock__/api.js吗??
标签: jestjs