【发布时间】:2020-10-29 09:08:02
【问题描述】:
JS、Express、Node、Jest 的新手...但是作为一个项目,我们得到了一个新的不熟悉的代码库,我们假设要向它添加一些功能,包括一些测试。代码目前有这个功能,以便在注册时创建一个新的User;
// Create
export async function create(parentValue, { name, email, password }) {
// Users exists with same email check
const user = await models.User.findOne({ where: { email } })
if (!user) {
// User does not exists
const passwordHashed = await bcrypt.hash(password, serverConfig.saltRounds)
return await models.User.create({
name,
email,
password: passwordHashed
})
} else {
// User exists
throw new Error(`The email ${ email } is already registered. Please try to login.`)
}
}
这是我想要通过的测试,但即使将信息传递给函数,我也遇到了困难
import { create } from './resolvers.js'
import models from '../../setup/models'
describe("user resolvers", () => {
test("creating a user", () => {
expect(create({name: "test", email: "test@example.com", password: "123456"})).toMatchObject(models.User)
})
})
【问题讨论】:
标签: javascript node.js express testing jestjs