blindspot / frontend /src /api /access.test.ts
yashwrites's picture
Blindspot: initial Space deploy
54f0281 verified
Raw History Blame Contribute Delete
1.05 kB
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();
});
});