Non so come eseguire questo test Jasmine per il mio JS e sicuramente anche altri ppl hanno questo problema. Forse sto sbagliando o forse è impossibile - non ho trovato alcun indizio su questo. Il problema ha a che fare con il fatto che - in jQuery - $ (questo) non è uguale all'elemento scelto da es. $ ("# Questo-id"):
Javascript:
[..]
$("#button-id").on("click", function(e) { callSomeFunctionWith($(this)); });
Jasmine-Test (CoffeeScript):
[..]
spyOn some.object, "callSomeFunctionWith"
spyOnEvent($("#button-id"), 'click')
$("#button-id").trigger("click")
expect(some.object.callSomeFunctionWith).toHaveBeenCalledWith($("#button-id"))
Purtroppo questo test fallisce (con ogni variazione come la memorizzazione l'arbitro per in una variabile prima nel mio test Jasmine), perché la funzione NON è chiamata con $ ("# button-id"), ma viene invece chiamata con $ (this), e $ (this)! = $ ("# button- id ").
Qualcuno può dirmi come eseguire questo test? Sono abbastanza perso. Anche lo Remy Sharp's great article on jQuery and $(this) non mi ha più aiutato.