2016-02-23 88 views
1

我試圖測試構造下面一個角度工廠:測量角廠與茉莉花原型

angular.module('app') 
.factory('PaymentCalculatorFactory', [ 

function() { 

    return { 
     function1: function1, 
     function2: function2, 
     // more functions 
    }; 

    function function1() { 
     // implementation 
    } 

    function function2(){ 
     // implementation 
    } 
}]); 

我使用的角度嘲笑和Jasmine有,我用一個嘗試和真正的模式在其他地方,但由於某種原因,我得到了DI錯誤

Unknown provider: PaymentCalculatorFactoryProvider <- PaymentCalculatorFactory 

這裏是我的茉莉花測試開始

describe("Payment Calculator Factory", function() { 

    var factory; 

    beforeEach(module('app')); 

    beforeEach(inject(function(PaymentCalculatorFactory) { 
     factory = PaymentCalculatorFactory; 
    })); 

    // more describes and its and such 

據我所知,所有的文件都在正確的位置進行測試。有什麼建議麼?

+0

您是否在該模塊上定義了更多工廠/控制器/指令/等等?請確保您使用的是getter語法,而不是構造函數語法(使用數組作爲第二個參數)。 –

+3

另外你如何包含要測試的文件?你在使用Karma嗎?你的Karma Config是什麼樣的? –

+0

@MicahWilliamson我肯定對這個工廠使用了getter語法。該模塊的'應用程序'是分開構造的。 –

回答

0

這是Grunt配置中的排序......我不得不將含有「應用程序」模塊的文件放在包含PaymentCalculatorFactory的文件的之前。感謝@MicahWilliamson指點我的配置。