2015-10-04 12 views
5

Próbuję zrobić atrapę usługę, aby uzyskać dane kątowe, używam ngMockE2E, a mój kod na Mock wygląda następująco:

(function() { 
    "use strict" 
    var app = angular 
     .module("productResourceMock", ["ngMockE2E"]); 

    app.run(function ($httpBackend) { 
     var products = [ 
      { 
       "productId": 1, 
       "productName": "mobile1", 
       "productCode": "heh4", 
       "releaseDate": "May 21, 2013", 
       "description": "very nice mobile", 
       "cost": 200, 
       "price": 300, 
       "category": "Electronics", 
       "tags": ["mobile", "electronic"], 
       "imageUrl": "images/img1.jpg" 
      }, 
      { 
       "productId": 2, 
       "productName": "mobile2", 
       "productCode": "heh4", 
       "releaseDate": "May 21, 2012", 
       "description": "not a nice mobile", 
       "cost": 100, 
       "price": 500, 
       "category": "Electronics", 
       "tags": ["mobile", "Electronic"], 
       "imageUrl": "images/img2.jpg" 
      }]; 

     var productUrl = "/api/products"; 
     $httpBackend.whenGet(productUrl).respond(products); 
    }); 

}()); 

I zdefiniowano mojego kontrolera, a wewnątrz niej, że ma ten kod:

(function() { 
    "use strict" 
    angular 
     .module("productManagement") 
     .controller("ProductListCtrl", 
        ["productResource", 
         ProductListCtrl]); 

    function ProductListCtrl(productResource) { 
     var vm = this; 
     productResource.query(function(data){ 
     vm.products = data; 
     }); 
    } 
}()); 

a dla moich usług, który wysyła żądania odpoczynek, mam ten kod:

(function() { 
    "use strict" 
    angular 
     .module("common.services") 
     .factory("productResource", 
       ["$resource", productResource]); 


    function productResource($resource) { 
     return $resource("/api/products/:productId"); 
    } 
}()); 

Nadal dostaję ten błąd: Uncaught TypeError: $ httpBackend.whenGet nie jest funkcją.

Każda pomoc jest doceniana lub potrzebne są dodatkowe wyjaśnienia. Daj mi znać.

Odpowiedz

3

Odpowiedź jest prosta: zastąpić whenGet z whenGET

Należy uważać, aby napisać czasownik http wszystko wielkimi literami.

Zobacz ngMock documentation