2016-02-29 146 views
2

我有一個角度應用程序,在初始化時,請求一些http請求。多個意外請求:GET

我已經建立了一個試驗,預計第一批請求,第二,

describe("MyController--", function() { 

    var controller, scope, $httpBackend, myFactory; 

    var iResponse = { 
     table: 'red', 
     price: '1.99' 
    }; 

    beforeEach(angular.mock.module('myApp')); 

    beforeEach(inject(function (_$controller_, _$rootScope_, _$httpBackend_, _myFactory_) { 
     scope = _$rootScope_.$new(); 
     $httpBackend = _$httpBackend_; 

     $httpBackend.expectGET("/app/shopping/cart/layout.html").respond({}); 
     $httpBackend.expectGET("/app/rest/products").respond(iResponse); 

     myFactory = _myFactory_; 
     spyOn(myFactory, 'getData').and.callThrough(); 

     controller = _$controller_('MainController', {$scope: scope}); 
     scope.$apply(); 
     $httpBackend.flush(); 
    })); 

    it('should verify that the controller exists ', function() { 
     expect(controller).toBeDefined(); 
    }); 

通過上述,我把看到的錯誤:

Error: Unexpected request: GET /app/rest/products 
Information: Expected GET /app/shopping/cart/layout.html 

任何想法我是什麼失蹤?

+0

是它使得兩次調用API?如果是這樣,你需要對每個人的呼叫有一個期望。如果你不想爲每一個ca做一個期望 – danday74

回答

0

首先,我會預裝在因果報應的conf HTML,這樣你們就不必指望HTML

其次貴控制器做出意想不到的URL電話?如果你還是你shud預期請求

所有最優秀的

+0

控制器打電話給/ products ...對.html文件的調用來自我的路由器通過templateUrl –

+0

你是否對產品進行多次調用?如果是這樣你需要一個期望得到每個電話。如果你不想要這個,那就用whenget – danday74

相關問題