Spaces:
Running
Running
File size: 1,049 Bytes
54f0281 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import { describe, expect, it } from 'vitest';
import { gateKindFromBody } from './access';
describe('gateKindFromBody', () => {
it('reads the access error in either body shape', () => {
expect(gateKindFromBody(401, { error: 'access_code_required' })).toBe('access');
expect(gateKindFromBody(401, { detail: { error: 'access_code_required' } })).toBe('access');
expect(gateKindFromBody(401, { detail: 'access_code_required' })).toBe('access');
});
it('reads the reviewer error', () => {
expect(gateKindFromBody(401, { error: 'review_code_required' })).toBe('reviewer');
expect(gateKindFromBody(401, { error: 'reviewer_code_required' })).toBe('reviewer');
expect(gateKindFromBody(403, { detail: 'reviewer_code_required' })).toBe('reviewer');
});
it('ignores other statuses and bodies', () => {
expect(gateKindFromBody(404, { error: 'access_code_required' })).toBeNull();
expect(gateKindFromBody(401, { detail: 'Not authenticated' })).toBeNull();
expect(gateKindFromBody(401, null)).toBeNull();
});
});
|