【发布时间】:2015-04-14 16:52:36
【问题描述】:
我知道如何为 GET 方法编写测试,但是其他方法呢?放置、修补、删除?
例如,这是我删除用户的服务方法:
removeOne: function(user) {
var deferred;
console.log(user);
deferred = $q.defer();
if (_.isUndefined(user.id) || _.isNaN(user.id)) {
AlertsServ.logError(err);
deferred.reject(err);
} else {
user.remove().then(function(result) {
AlertsServ.logSuccess('Użytkownik został usunięty');
return deferred.resolve(result);
}, function(err) {
AlertsServ.logError(err);
console.log(err);
return deferred.reject(err);
});
}
return deferred.promise;
}
应该是这样的:
describe('DELETE /users/1', function() {
beforeEach(function() {
return $httpBackend.expect('DELETE', BACKEND_URL + '/users/1').respond(200, 'user1');
});
return describe('removeOne method', function() {
return it('should get one user', function() {
var user;
user = {
id: 1,
routes: 'users'
};
return UserServ.removeOne(user);
});
});
});
但是如何定义用户呢?
P.S.:如何在 Jasmine/Karma Restangular 中定义基本 url?
【问题讨论】:
标签: angularjs unit-testing jasmine karma-runner restangular