放射をテストする必要がある角度指令に対してジャスミンユニットテストを行うにはどうすればよいですか?放射をテストする必要がある角度指示のジャスミン単位テストを行うにはどうすればよいですか?
このディレクティブは属性ディレクティブであり、私がテストする必要があるディレクティブの中にemitがあります。
これは最善の方法ですか?
これが私の現在のテストです:
//broadcast test:
describe('broadcast called', function() {
var rootScope, testService;
beforeEach(inject(function(_$rootScope_, $injector) {
rootScope = _$rootScope_;
testService = $injector.get('testFactory');
spyOn(rootScope, "broadcast");
}));
it('should be broadcast', function() {
testService.emitTest();
expect(rootScope.broadcast).toHaveBeenCalledWith('test1');
});
});
現在のコード:
appservicemod.factory('testFactory', ['$rootScope', function ($rootScope) {
var emitTest = function(){
$rootScope.$broadcast('test1');
}
return {
emitTest: emitTest
}
}
]);
「emit」メソッドをスパイし、それがcalleであることを確認します期待される引数で呼び出されると期待したとき – Phil
'testService.emitTest'は何をするのですか?これを知らずに何が間違っているのか分からない。 –
は、内部にブロードキャストを持つ関数の名前です。私も上記を追加します – AngularM