La documentazione presso https://github.com/pivotal/jasmine/wiki/Matchers include quanto segue:Il matcher toThrow di Jasmine richiede che l'argomento sia racchiuso in una funzione anonima?
expect(function(){fn();}).toThrow(e);
Come discusso nel this question, il seguente fa non lavoro perché vogliamo passare un oggetto funzione per expect
piuttosto che il risultato della chiamata fn()
expect(fn()).toThrow(e);
Domanda 1: Il seguente lavoro?
expect(fn).toThrow(e);
Domanda 2: Se ho definito un oggetto thing
con un metodo doIt
, fa il seguente lavoro?
expect(thing.doIt).toThrow(e);
(2 bis: se è così, c'è un modo per passare gli argomenti al metodo doIt
?)
Empiricamente la risposta sembra essere sì, ma non mi fido mia comprensione di scoping js abbastanza per essere sicuro.
Grazie!
Eventuali duplicati: http://stackoverflow.com/questions/4144686/jasmine-how-to-write-a-test-which-expects-an-error-to-be-thrown – Petrov