Пересмешка AngularJS Webservice с использованием модульного теста Jasmine

0

Я хочу издеваться над моим методом Angular JS, используя Jamine. Мой код: -

<script type="text/javascript">

var app = angular.module('mymodulee', []);
   app.controller('mycontroller', function ($scope, $http, $log) {
    $scope.ButtonClick = function (Id) {

        var response = $http({
            method: "get",
            url: http://localhost:8080/Access/Tasks.DefectManagement/Services/Services.asmx/GetEligibilityDetails",
            params: {
                CovId: Id
            }

        });
        return response;
    }
});

И мой тестовый пример Жасмин:

    it('EligibilityDetails', function () {

    var myserv, httpBackend;

    inject(function ($httpBackend, _myserv_) {
        myserv = _myserv_;
        httpBackend = $httpBackend;
    });



afterEach(function () {
    httpBackend.verifyNoOutstandingExpectation();
    httpBackend.verifyNoOutstandingRequest();
});
    var $scope = {};
    var controller = $controller('PatientDefectManagementCtrl', { $scope: $scope });

    var returnData = {};
    httpBackend.expectGET("http://localhost:8080/Access/Tasks.DefectManagement/Services/Services.asmx/GetEligibilityDetails").respond(returnData);

    var returnedPromise = myserv.get(3904142);

    var result;
    returnedPromise.then(function (response) {
        result = response.data;
    });

    httpBackend.flush();

    expect(result).toEqual(returnData);



});

Но это дает ошибку. Может кто-нибудь, пожалуйста, скажите, какие изменения я должен внести в свой код, чтобы я мог запустить тестовый пример с использованием теста Jasmine Unit.

Пожалуйста помоги.

благодаря

Теги:
unit-testing

1 ответ

0
 describe('test',function(){
 afterEach(function () {
httpBackend.verifyNoOutstandingExpectation();
httpBackend.verifyNoOutstandingRequest();});
 var myserv, httpBackend;
beforeEach(inject(function(_$httpBackend_,_myserv__){
myserv = _myserv_;
httpBackend = $httpBackend;});
it('EligibilityDetails', function () {
var $scope = {};
var controller = $controller('PatientDefectManagementCtrl', { $scope: $scope });
var returnData = {};
httpBackend.expectGET("http://localhost:8080/Access/Tasks.DefectManagement/Services/Services.asmx/GetEligibilityDetails").respond(returnData);

var returnedPromise = myserv.get(3904142);

var result;
returnedPromise.then(function (response) {
    result = response.data;
});

httpBackend.flush();

expect(result).toEqual(returnData);});});
  • 0
    Можете ли вы помочь мне с кодом, какие изменения мне нужно сделать.
  • 0
    Укажите значение возвращаемых данных, так как вы ожидаете получить результат, оба должны быть одинаковыми. Если вы можете сказать мне ошибку, я могу помочь вам больше.
Показать ещё 6 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню