0 Tage Serie
javascript / beginner
Snippet

Überprüfen eines Währungsformatierers mit Unit Tests

Reine JavaScript-Hilfsfunktionen, die Datentransformationen durchführen, sollten isoliert und mit Unit-Tests verifiziert werden. Das Testen von Standardfällen (gültige Zahlen) und Grenzfällen (Strings, NaN) stellt sicher, dass sich die Funktion in allen verwendenden Komponenten vorhersehbar verhält.

snippet.js
javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import { describe, it, expect } from 'vitest';
export function formatCurrency(amount, currencySymbol = '€') {
if (typeof amount !== 'number' || Number.isNaN(amount)) {
return '0.00 ' + currencySymbol;
}
return `${amount.toFixed(2)} ${currencySymbol}`;
}
describe('formatCurrency', () => {
it('formats positive numbers with default currency', () => {
const result = formatCurrency(19.99);
expect(result).toBe('19.99 €');
});
it('handles invalid non-number input fallback', () => {
const result = formatCurrency('invalid');
expect(result).toBe('0.00 €');
});
});
vue
Erklärung
1
if (typeof amount !== 'number' || Number.isNaN(amount))
Schützt vor Nicht-Zahlen-Typen oder NaN-Werten vor dem Aufruf von Number-Methoden.
2
expect(result).toBe('19.99 €');
Prüft, ob die Ausgabe der Funktion mit der erwarteten formatierten Währungszeichenfolge übereinstimmt.