397777089e
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
22 lines
1.2 KiB
JavaScript
22 lines
1.2 KiB
JavaScript
import { describe, it, expect } from 'vitest';
|
|
import { resolveVerifyEnabled, verifyGateActive } from './verify-gate-config.mjs';
|
|
|
|
describe('verify-gate-config (рубильник, зеркало судьи)', () => {
|
|
it('флаг не "1" → enabled false', () => {
|
|
expect(resolveVerifyEnabled({ env: {} })).toBe(false);
|
|
expect(resolveVerifyEnabled({ env: { ROUTER_MENTOR_VERIFY_ENABLED: '0' } })).toBe(false);
|
|
expect(resolveVerifyEnabled({ env: { ROUTER_MENTOR_VERIFY_ENABLED: '1' } })).toBe(true);
|
|
});
|
|
it('флаг OFF → {active:false, keyMissing:false} (inert $0)', () => {
|
|
expect(verifyGateActive({ env: {}, keyImpl: () => 'k' })).toEqual({ active: false, keyMissing: false });
|
|
});
|
|
it('флаг ON + ключ → {active:true, keyMissing:false}', () => {
|
|
expect(verifyGateActive({ env: { ROUTER_MENTOR_VERIFY_ENABLED: '1' }, keyImpl: () => 'k' }))
|
|
.toEqual({ active: true, keyMissing: false });
|
|
});
|
|
it('флаг ON + НЕТ ключа → {active:false, keyMissing:true} (consumer → fail-CLOSE)', () => {
|
|
expect(verifyGateActive({ env: { ROUTER_MENTOR_VERIFY_ENABLED: '1' }, keyImpl: () => null }))
|
|
.toEqual({ active: false, keyMissing: true });
|
|
});
|
|
});
|