SuperTest对Chai.expect的预期

时间:2015-07-07 19:18:17

标签: node.js supertest

我很困惑,所以如果我使用SuperTest显然看起来它有自己的期望断言,那么我不需要担心使用Chai?或者当我需要Chai时,Supertest知道它并将其用作期望机制?

1 个答案:

答案 0 :(得分:12)

SuperTest扩展了SuperAgent的request对象以包含expect功能。它不像Chai的expect断言那样起作用,但可以用来断言http响应状态和标题,并且可以与Chai的expect混合使用。

request(app).
get('/').
expect(200).    // request.expect, is status code 200?
expect('Content-Type', /json/).    // request.expect, does content-type match regex /json/?
expect(function(res){  // request.expect, does this user-provided function throw?
  // user-provided function can include Chai assertions
  expect(res.body).to.exist;
  expect(res.body).to.have.property('status');
}).
end(done);