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 }); }); });