40 lines
1.1 KiB
JavaScript
40 lines
1.1 KiB
JavaScript
import { describe, it, expect, beforeEach, afterEach } from 'vitest'
|
|
import { getSessionMaxAgeDays } from '../../server/utils/session.js'
|
|
|
|
describe('session', () => {
|
|
const origEnv = process.env
|
|
|
|
beforeEach(() => {
|
|
process.env = { ...origEnv }
|
|
})
|
|
|
|
afterEach(() => {
|
|
process.env = origEnv
|
|
})
|
|
|
|
it('returns default 7 days when SESSION_MAX_AGE_DAYS not set', () => {
|
|
delete process.env.SESSION_MAX_AGE_DAYS
|
|
expect(getSessionMaxAgeDays()).toBe(7)
|
|
})
|
|
|
|
it('returns default when SESSION_MAX_AGE_DAYS is NaN', () => {
|
|
process.env.SESSION_MAX_AGE_DAYS = 'invalid'
|
|
expect(getSessionMaxAgeDays()).toBe(7)
|
|
})
|
|
|
|
it('clamps to MIN_DAYS (1) when value below', () => {
|
|
process.env.SESSION_MAX_AGE_DAYS = '0'
|
|
expect(getSessionMaxAgeDays()).toBe(1)
|
|
})
|
|
|
|
it('clamps to MAX_DAYS (365) when value above', () => {
|
|
process.env.SESSION_MAX_AGE_DAYS = '400'
|
|
expect(getSessionMaxAgeDays()).toBe(365)
|
|
})
|
|
|
|
it('returns parsed value when within range', () => {
|
|
process.env.SESSION_MAX_AGE_DAYS = '14'
|
|
expect(getSessionMaxAgeDays()).toBe(14)
|
|
})
|
|
})
|