【发布时间】:2016-03-07 15:05:58
【问题描述】:
我有点困惑,为什么我将undefined 作为我正在测试的函数的返回值。
这是我正在测试的功能:
$scope.entityItemsIntoObjectChecked = function (entityItems) {
newEntityWithChecked = entityItems.map(function (value) {
return { "val": value, "checked": false };
});
shareDataService.setEntityArray(newEntityWithChecked);
}
以及我的测试套件的一部分:
it("should arrange an array into ovject with extra value for entities + depots", inject(function (shareDataService) {
var dummyEntityArray = ["ent1", "ent2", "ent3"];
var expectedObjectArray = [{ val: "ent1", checked: false }, { val: 'ent2', checked: false }, { val: 'ent3', checked: false }];
expect(mainScope.entityItemsIntoObjectChecked).toBeDefined();
mainScope.entityItemsIntoObjectChecked(dummyEntityArray);
console.log(mainScope.entityItemsIntoObjectChecked(dummyEntityArray))
}))
我期待console.log(mainScope.entityItemsIntoObjectChecked(dummyEntityArray)) 行根据我之前在mainScope.entityItemsIntoObjectChecked(dummyEntityArray); 行上传入的数组dummyEntityArray 输出我的数组
但我在 console.log 上得到 undefined。这是为什么呢?
【问题讨论】:
标签: javascript angularjs testing jasmine karma-jasmine