Legyen egy checkInput() nevű függvény, ami bemenetet teszteli. Helytelen bemenet esetén hibával le kell állnia. Ezt az if() utasítás biztosítja, a benne található throw new Error() kifejezéssel.
function checkInput(input) { if(input<1) { throw new Error('Hiba! 1-nél kisebb érték!') } let res = input.match(/^[0-9]+$/); return res; }
Az expect() számára egy névtelen függvényt adunk át, amiben helytelen adattal meghívjuk a checkInput() függvényt.
it('Hibát dob ha kisebb 1-nél az éréték?', () => { expect(() => { checkInput('-3') }).toThrow(); });
A hibaüzenet bármi lehet, nincs megkövetelve, mi legyen.
Nem csak leállást hibával, de a konkrét szöveget is megkövetelhetjük.
Elsőként használjuk a toThrowError() függvényt:
it('Megadott hibát dob 0 vagy kisebb érték esetén?', () => { expect(() => { checkInput('-3') }).toThrowError('Hiba! 0 vagy kisebb érték!'); });
A toThrow() függvénnyel:
it('Megadott hibát dob 0 vagy kisebb érték esetén?', () => { expect(() => { checkInput('-3') }).toThrow(new Error('Hiba! 0 vagy kisebb érték!')); });