如何在业力中使用$ q和$ http函数编写服务单元测试?

时间:2017-03-24 09:15:54

标签: javascript angularjs karma-runner karma-jasmine

angular.module('test').service('TestServices', TestServices);
  TestServices.inject = ['$window ', '$http', ' $q'];
  function TestServices($window, $http, $q) {
  var _this = this;
  _this.getData = function() {
      var deferred = $q.defer();
      var url = '/test/url';
      //http call
      $http({ 
      method: 'GET',
      url: url 
      }).then(function(response) {
            deferred.resolve(response.data);
        }, function(response) {
            deferred.reject(response);
        });
        return deferred.promise;
    };
}

上面给出的是我的服务功能,我需要在业力中为服务编写单元测试。目前使用的是角1.6版。任何人都可以知道如何编写单元测试???

1 个答案:

答案 0 :(得分:0)

使用$ rootScope。$ apply()它将解决所有的承诺。