Wie kann ich die trigger ein click-Ereignis in einem Jasmin-unit-test für einen Winkel-Richtlinie?
In meinem Richtlinie link
Funktion:
$document.on('click.sortColumnList', function () {
viewToggleController.closeSortColumnList();
scope.$apply();
});
In meinem Jasmin-unit-test:
describe('document click', function () {
beforeEach(function () {
this.$document.triggerHandler('click.sortColumnList');
});
it('should tell the controller to close the sort column list', function () {
expect(this.ctrlMock.closeSortColumnList).toHaveBeenCalled();
});
it('should trigger a digest cycle', function () {
expect(this.$scope.$apply).toHaveBeenCalled();
});
});
Dies ist nicht eigentlich die Auslösung des Ereignis-Listeners. Die tests sind nicht mit:
Expected spy closeSortColumnList to have been called.
Sich die Spione sind richtig eingestellt, das problem ist, dass der Ereignis-listener wird nicht gefeuert.
Was müssen Sie tun, um ein Ereignis auszulösen, auf $document
im Jasmin Angular unit-test?
InformationsquelleAutor AgmLauncher | 2016-08-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie jasmine-jquery zu Ihrem Projekt haben Sie spezifische Funktionen zu erreichen, was Sie brauchen. Mit diesem können Sie etwas wie die folgende:
Ich hoffe, das hilft.
Ich bin nicht wirklich sicher, was Ihre set-up ist, aber wenn Sie mit der Karma test runner, fügen Sie einfach den Speicherort der Datei in der files-Sektion der
karma.conf.js
- Datei.Ich bin mit Jasmin und Chuzpe..
Ich habe noch nie verwendet Chuzpe vor, aber dieser link scheint, wie kann es sein, was Sie brauchen. github.com/mmanela/chutzpah/wiki/Chutzpah-File-References. Ich denke, Sie würde wollen, setzen jasmine-jquery-durch die Datei-Referenzen.
InformationsquelleAutor Jon Black