比较function结果与API中的柴?
我对JavaScript非常陌生,我已经创build了一个Node模块,但是我想用Mocha和Chai来添加一些testing。
我的节点模块返回TVmaze API的结果。 该模块被称为tvmaze-node,可通过NPM使用。
例如,以下内容将返回http://api.tvmaze.com/search/shows?q=girls的结果
pullRequest: function(url, donePulledRequest) { request(url, function(error, response, body){ if(error || response.statusCode === 404 || body.length == 2) { donePulledRequest(error || 'No results'); } else { donePulledRequest(null, JSON.parse(body)); } }); }, search: function(show, doneShow){ var url = "http://api.tvmaze.com/search/shows?q=" + show; module.exports.pullRequest(url, doneShow) },
我想在Chai中做的是确保search结果匹配从URL返回的json。
我有柴的结构,但不能从我的生活中找出逻辑。 出于某种原因,我得到的错误:
Uncaught AssertionError:expected [Array(10)] to deep equal'[{“score”:2.096719,“show”:{…… 显示在上面URL的数组的其余部分
describe('Show Search', function() { it("Returns all results for a given search", function(done) { tvmaze.search("Lost", function(error, response) { if(error){ done(error); } else { request('http://api.tvmaze.com/search/shows?q=lost', function(error, resp, body){ expect(response).to.eql(body); done(); }) } }); done(); }); });
每个代码donePulledRequest(null, JSON.parse(body));
,你应该检查下面的testing代码中的值。
expect(response).to.eql(JSON.parse(body))
- 我可以让柴的expect.to.thot.throw同步吗?
- 使用MochatestingReact组件:意外令牌
- 断言库node.js?
- 安装Zombie.js错误:ReferenceError:Set未定义。 我究竟做错了什么?
- nodejs – stub module.exports函数与sinon
- testingMicrosoft Bot Frameworkasynchronous回复
- 使用Mocha / Chai来testingNodeJS的匿名callback代码
- 允许chai / mochatesting将错误冒泡到process.on
- 使用Mocha和Chai编写testing用例,以便使用Error