const test = require('node:test'); const assert = require('node:assert'); const { authenticate } = require('../routes/auth'); test('authenticate should reject invalid credentials', async () => { const req = { body: { username: 'invalid', password: 'wrong' } }; const res = { status: (code) => { res.statusCode = code; return res; }, json: (data) => { res.data = data; } }; await authenticate(req, res); assert.strictEqual(res.statusCode, 401); assert.deepStrictEqual(res.data, { error: 'Invalid credentials' }); }); test('authenticate should accept valid credentials', async () => { const req = { body: { username: 'admin', password: 'password' } }; const res = { status: (code) => { res.statusCode = code; return res; }, json: (data) => { res.data = data; } }; await authenticate(req, res); assert.strictEqual(res.statusCode, 200); assert.ok(res.data.token); });