나는이 같은 제출 이벤트에 부착 된 핸들러가있는 형태 :재스민 jQuery를 함께 양식 제출 핸들러를 테스트
$('#myForm').bind('submit', $.proxy(this, 'form_onSubmit'));
내가 보장하기 위해 코드 줄을 테스트하는 방법을 작동하지 않을 수 있습니다 양식이 제출되면 올바른 이벤트 핸들러를 사용합니다.
describe('Submitting the form', function() {
it ('Uses the correct event handler', function() {
spyOn(myConstructor, 'form_onSubmit');
$('#myForm').trigger('submit');
expect(myConstructor.form_onSubmit).toHaveBeenCalled();
});
});
나는 또한 사용하려고했습니다 : : 나는 수 없었던으로
expect($('#myForm')).toHandleWith('submit', myConstructor.form_onSubmit);
을하지만 페이지가 무한 루프에 자신을 제출 유지 예를 들어,이 작동하지 않습니다 이 어디서나 작동하는 예제를 찾으려면 Jasmine이 "undefined의 submit '속성을 읽을 수 없음"이라는 오류를 던지고있는 것입니다. 여기서 undefined는 this.actual.data ("events")입니다).
아무도 도와 줄 수 있습니까? 나는 몇 시간 동안 그것을 해왔다! 감사.
흠 ...'triggerHandler가 ('제출') 하는가 '또한 페이지가 다시 게시 원인
? –그 재발 방지 (이전에는 사용하지 않았지만 - 감사합니다!)하지만 불행히도 Jasmine은 myConstructor.form_onSubmit이 호출되지 않는다고 생각하므로 테스트가 여전히 실패합니다. (내가 코드에 중단 점을 넣었더라도) – user399050