У меня есть этот модуль узла с именем client
.Он имеет следующую структуру:
//index.js
import users from "./users"
export default { users }
И:
//users.js
export default { getUser }
function getUser(username) {
...
return {role: userRole}
}
Я хочу смоделировать эту функцию getUser (имя пользователя) в моих тестах.Таким образом, я мог бы вызвать что-то вроде:
client.users.getUser.mockResolvedValueOnce({role: "manager"})
Мой заголовок теста выглядит так:
let client = jest.genMockFromModule('client').default;
client.users.getUser = jest.fn();
Но, выполняя мой тест, я получаю следующую ошибку, когда мой исходный код вызывает client.users.getUser
.
TypeError: Cannot read property 'users' of undefined
58 |
59 | // Retrieve user and then return its projects
> 60 | client.users.getUser(username)
| ^
61 | .then(user => {
62 | if (!user) {
63 | throw new Error(`User ${username} not found`)
at Object.getUser (node_modules/client/build/users.js:26:45)
at Object.getUser [as insert] (src/web/controller/projects.js:60:18)
at Object.insert (src/web/controller/projects.test.js:80:18)