【发布时间】:2016-12-18 12:17:30
【问题描述】:
我有(Angular.js 1.5 + ng-redux)代码:
update: function(itemId, value) {
return function(dispatch, getState) {
var params;
params = {
id: itemId,
action: value
};
resultsAPI.change(params).then(function(results) {
dispatch({
type: "CHANGE_STETE",
itemId: itemId,
output: results
});
});
};
}
或咖啡脚本:
update: (itemId, value) -> (dispatch, getState) ->
params = {
id: itemId,
action: value
}
resultsAPI.change(params).then(results) ->
dispatch({
type: "CHANGE_STATE"
itemId: itemId
output: results
})
我想写一个测试看看是否已经使用正确的参数向API发出请求。 我还会检查是否调用了 .then() 调度函数。关于如何去做的任何想法?
【问题讨论】:
-
在您的测试中,您必须发送 API 请求然后对其进行测试。然后您可以使用
toHaveBeenCalledWith()功能。我建议查看这篇文章:htmlgoodies.com/html5/javascript/… -
谷歌茉莉异步测试。有很多东西。请在发布到 Stack Overflow 之前进行研究,如果文档中有您不理解的内容,请将其包含在问题中。
标签: javascript angularjs unit-testing coffeescript jasmine