我正在尝试测试当用户销毁回调收到用户控制器错误时会发生什么。当 destroy 收到错误时,它会执行以下操作:
flash('error', 'Can not destroy user');
redirect(path_to.users);
这是到目前为止的测试:
it('should fail on DELETE /users/:id if destroy receives an error', function (done) {
var User = app.models.User;
var user = new UserStub();
User.find = sinon.spy(function (id, callback) {
callback(null, user);
});
user.destroy = sinon.spy(function (callback) {
callback(new Error());
});
request(app)
.del('/users/55')
.end(function (err, res) {
res.header.location.should.include('/users');
app.didFlash('error').should.be.true;
done();
});
});
我已经看到了这个问题,并且该res.header..
部分按预期工作。但是,我仍然对如何测试重定向后发生的闪存感到困惑。