nodejs / mocha / nock – 模拟整个html响应

我如何为我的testing模拟整个HTML正文响应?

我正在使用nodejs / mocha / nock。

与诺克我可以嘲笑JSON响应就好,例如:

nock('http://myapp.iriscouch.com') .get('/users/1') .reply(200, {_id: "123ABC", _rev: "946B7D1C", username: 'pgte'}); 

我使用curl -o来获取我想要的模拟html,所以我已经在一个文件中 – 但我不知道如何将HTML文件传递给nock(或其他)。

谢谢。

首先获取testing文件的HTML内容并将其放入一个string中(例如使用fs.readFile

之后你可以做:

 nock('http://myapp.iriscouch.com'). get('/users/1'). reply(200, yourFileContent); 

这是在过去:)为我制定的

如果你愿意的话,你可以明确地指定内容types,因为你指定的主体是一个string,这将有效地让你轻松地模拟任何非二进制响应:

 nock('http://myapp.iriscouch.com'). get('/users/1'). reply(200, yourFileContent, {'content-type': 'text/html'}); 

如果你想要一个更一般的方法,我已经提出了一个更类似的问题,并得到了一些有趣的回答。