首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >$httpBackend.verifyNoOutstandingRequest()不会引发错误

$httpBackend.verifyNoOutstandingRequest()不会引发错误
EN

Stack Overflow用户
提问于 2013-08-09 17:55:03
回答 1查看 681关注 0票数 0

我的测试设置了一个http请求,但是我没有执行$httpBackend.flush()。下面是测试结果:

代码语言:javascript
复制
describe("Unit: Testing Services", function() {
    beforeEach(angular.mock.module('EmsWeb.Services'));
    describe("Unit: DalService", function () {
        var $httpBackend, dalService, appModel;
        beforeEach(inject(function ($q, _$httpBackend_, AppModel, DalService) {
            dalService = DalService;
            appModel = AppModel;
            $httpBackend = _$httpBackend_;
            $httpBackend.when('POST', '../api/ModuleApi/GetModules').respond({ userId: 'userX', 'A-Token': 'xxx' });            
            appModel.context.company = { code: 'LPL' };
        }));

        describe("canceling request should fail", function () {             

            it('checks request should be canceled ', function () {
//              $httpBackend.expectPOST('../api/ModuleApi/GetModules');
                var returnedData;
                var callBackFn = function (data) {
                    returnedData = data;
                };
                dalService.getModules('senderIdentifier', appModel.context, callBackFn, callBackFn);
            });

        });

        afterEach(function () {
            $httpBackend.verifyNoOutstandingRequest();
        });
    });

我预计$httpBackend.verifyNoOutstandingRequest();会抛出一个错误,因此没有调用$httpBackend.flush()

我也尝试添加$httpBackend.expectPOST('../api/ModuleApi/GetModules');,但没有什么不同。

我遗漏了什么?

EN

回答 1

Stack Overflow用户

发布于 2013-10-24 01:26:25

除非发送$http请求,否则$httpBackend.verifyNoOutstandingRequest()不会引发任何关于“未刷新的请求”的错误。如果你分享了DalService,以及getModules在该服务中的作用,事情会变得更加清晰。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18144084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档