API をテストするために Lab を使い始めています。API は通常の CRUD 操作を行いますが、ドキュメント ID を必要とする Update および Delete メソッドをテストするにはどうすればよいか考えています。
私の API は、新しく作成された mongo ドキュメントを 内に返しますresponse.payload
。私が理解していないのは、なぜDELETE
テストresultId
でundefined
.
これが私のコードです:
lab.experiment('User module', () => {
var resultId; // Initialize a variable to save the document ID later.
lab.test('should create user', (done) => {
var options = {
method: 'POST',
url: '/api/v1/users',
payload: {
username: 'testUser',
password: 'testPassword'
}
};
server.inject(options, (response) => {
resultId = response.payload._id; // Update resultId
Code.expect(response.statusCode).to.equal(200);
done();
});
});
lab.test('should delete user', (done) => {
var options = {
method: 'DELETE',
url: '/api/v1/users/' + resultId // Turns out resultId is undefined
};
server.inject(options, (response) => {
Code.expect(response.statusCode).to.equal(200);
done();
});
});
});