// @vitest-environment node import { describe, it, expect, beforeAll } from 'vitest' // Set JWT_SECRET before importing the module beforeAll(() => { process.env.JWT_SECRET = 'test-secret-at-least-32-characters-long' }) import { createSession, verifySession } from '../../../lib/auth/session' describe('session', () => { const payload = { sub: 'user-1', role: 'hse', siteId: null, name: 'Test User' } it('creates a verifiable JWT', async () => { const token = await createSession(payload) const decoded = await verifySession(token) expect(decoded).not.toBeNull() expect(decoded?.sub).toBe(payload.sub) expect(decoded?.role).toBe(payload.role) }) it('returns null for invalid token', async () => { const result = await verifySession('not.a.valid.jwt') expect(result).toBeNull() }) })