2014-11-11 2 views
1

Я использую Jasmine в Visual Studio с адаптером для тестирования chutzpah поверх AngularJs.

Я получаю эту ошибку при выполнении теста:

  • Ошибка: Неожиданный запрос: GET/WebAPI/API/Карта
  • Ошибка: Невыполненные запросы: GET/WebAPI/апи/Карта/

обслуживание:

var services = angular.module('mapService', ['ngResource']); 
services.factory('mapService', ['$resource', 
function ($resource) { 
    var objects = undefined; 
    var res = $resource('/webapi/api/Map/', {}, { 
     query: { 
      method: 'GET', 
      isArray: true 
     } 
    }); 
    return { 
     getObjects: function (callback) { 
      res.query(function(successResult) { 
       objects = successResult; 
      }); 
      return objects; 
     } 
    } 
}]); 

тест:

describe('testing the department controller', function() { 
    var $scope, $location, mapController, $httpBackend, myMapService; 

    beforeEach(module('app')); 

    beforeEach(inject(function ($injector, $rootScope, $controller, _$httpBackend_, mapService) { 
     $httpBackend = _$httpBackend_; 
     $httpBackend.when('GET', '/webapi/api/Map/') 
      .respond([jasonArray]); 

     myMapService = mapService; 
    })); 
    afterEach(function() { 
     $httpBackend.verifyNoOutstandingExpectation(); 
     $httpBackend.verifyNoOutstandingRequest(); 
    }); 

    it('should have objects', function() { 
     $httpBackend.expect('GET', '/webapi/api/Map/'); 

     var objects = myMapService.getObjects(function (result) { 
      objects = result; 
     }); 
     $httpBackend.flush(); 
     expect(objects.length).toBeGreaterThan(0); 
    }); 
}); 

Может кто-нибудь предположить, что мне не хватает?

ответ

0

Обнаружена ошибка в URL:

Просто удалили слэш, и она работала отлично. $httpBackend.when('GET', '/webapi/api/Map')

Смежные вопросы