FAIL checkout.test.js ✕ calculateTax should add 8% sales tax (5ms) ✕ applyDiscount should not apply to non-VIP (2ms) The tests screamed instantly. The broken line was caught before it ever reached production.
test('apply 20% discount to VIP users', () => { const user = { type: 'VIP' }; const total = 100; const result = applyDiscount(user, total); expect(result).toBe(80); }); He ran it. The function didn't exist yet. -Code With Mosh- Mastering JavaScript Unit Testing
He wrote his first failing test:
Leo paused the video. He looked at his own checkout.js file—a 500-line monster with nested conditionals, global variables, and functions that did seven things at once. No wonder it broke. FAIL checkout
Leo turned to Sarah. "I broke the code on purpose. The tests found it in 0.3 seconds." The function didn't exist yet
It felt… clean. The next lesson hit him like a truck. Mosh introduced Test-Driven Development (TDD) .