2015-10-04 8 views
5

には関数ではありません私はngMockE2Eを使用しています、角度のデータを取得するためにダミーのサービスをしようとしています、とモックのための私のコードは次のようになります。

(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私のコントローラを定義し、その中に、それはこのコードを持っています

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

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

そしてRESTリクエストを送信し、私のサービスのために、私はこのコードを持っている:

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


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

はまだこのエラーが発生しています。Uncaught TypeError:$ httpBackend.whenGetは関数ではありません。

何か助けていただければ幸いです。ご要望があれば教えてください。

答えて

3

答えは簡単です:すべて大文字でHTTP動詞を書くように注意してくださいwhenGET

whenGetを交換してください。

ngMock documentation

を参照してください。
関連する問題