节点:Mocha TDD 在正文中发送数组
Node: Mocha TDD sending Array in body
以下是我需要在请求中发送的正文格式:
[{
"user_id": "861",
"username": "userA",
"friend_id": "1270"
},
{
"user_id": "861",
"username": "userB",
"friend_id": "1270"
}]
我创建了以下测试:
describe('POST /friends/add', () => {
it('should return an array of Friend Objects ', (done) => {
request(app)
.post('/friend/add')
.set('auth', token)
.send([
{
"user_id": authUserId,
"username": filteredUsers[0].username,
"friend_id": filteredUsers[0].id
}, {
"user_id": authUserId,
"username": filteredUsers[2].username,
"friend_id": filteredUsers[2].id
}, {
"user_id": authUserId,
"username": filteredUsers[3].username,
"friend_id": filteredUsers[3].id
}
])
.expect(200)
.expect((res) => {
expect(res.body.email).toBe(email)
})
.end((err, res) => {
if (err) {
return done(err)
}
return done()
})
})
})
问题:.send([{ }])
是按照上述格式创建body参数吗?一组对象?
API 你用于测试查询看起来像 SuperTest, which under the hood uses SuperAgent. Here is SuperAgent documentation for send
.
所以是的,它将使用您的数组,将其转换为 JSON 并将其以正文形式发送到您正在测试的端点。
以下是我需要在请求中发送的正文格式:
[{
"user_id": "861",
"username": "userA",
"friend_id": "1270"
},
{
"user_id": "861",
"username": "userB",
"friend_id": "1270"
}]
我创建了以下测试:
describe('POST /friends/add', () => {
it('should return an array of Friend Objects ', (done) => {
request(app)
.post('/friend/add')
.set('auth', token)
.send([
{
"user_id": authUserId,
"username": filteredUsers[0].username,
"friend_id": filteredUsers[0].id
}, {
"user_id": authUserId,
"username": filteredUsers[2].username,
"friend_id": filteredUsers[2].id
}, {
"user_id": authUserId,
"username": filteredUsers[3].username,
"friend_id": filteredUsers[3].id
}
])
.expect(200)
.expect((res) => {
expect(res.body.email).toBe(email)
})
.end((err, res) => {
if (err) {
return done(err)
}
return done()
})
})
})
问题:.send([{ }])
是按照上述格式创建body参数吗?一组对象?
API 你用于测试查询看起来像 SuperTest, which under the hood uses SuperAgent. Here is SuperAgent documentation for send
.
所以是的,它将使用您的数组,将其转换为 JSON 并将其以正文形式发送到您正在测试的端点。