34 lines
1.4 KiB
TypeScript
34 lines
1.4 KiB
TypeScript
import { describe, expect, it, vi } from 'vitest';
|
|
|
|
import { createRuntimeTrace } from '../src/turn/runtimeTrace.js';
|
|
|
|
describe('runtime trace adapter', () => {
|
|
it('maps environment filters to domain trace subjects', () => {
|
|
const trace = createRuntimeTrace({
|
|
CORE_AI_TRACE_GENERAL_IDS: '3,7',
|
|
CORE_AI_TRACE_NATION_IDS: '11',
|
|
CORE_WAR_TECH_TRACE_NATION_IDS: '13',
|
|
CORE_BATTLE_FIXTURE_TRACE: '1',
|
|
});
|
|
|
|
expect(trace.isEnabled('AI_ACTION_PATCH_TRACE', { generalIds: [7] })).toBe(true);
|
|
expect(trace.isEnabled('AI_ACTION_PATCH_TRACE', { nationIds: [11] })).toBe(true);
|
|
expect(trace.isEnabled('AI_WAR_TRACE', { generalIds: [3] })).toBe(true);
|
|
expect(trace.isEnabled('WAR_TECH_TRACE', { nationIds: [13] })).toBe(true);
|
|
expect(trace.isEnabled('AI_WAR_FIXTURE_CORE')).toBe(true);
|
|
expect(trace.isEnabled('AI_WAR_TRACE', { generalIds: [9] })).toBe(false);
|
|
expect(
|
|
createRuntimeTrace({ CORE_AI_TRACE_GENERAL_IDS: ' 7' }).isEnabled('AI_WAR_TRACE', { generalIds: [7] })
|
|
).toBe(false);
|
|
});
|
|
|
|
it('preserves the legacy line protocol', () => {
|
|
const write = vi.fn();
|
|
const trace = createRuntimeTrace({}, write);
|
|
|
|
trace.write('AI_WAR_TRACE', { generalId: 7 });
|
|
|
|
expect(write).toHaveBeenCalledWith('AI_WAR_TRACE {"generalId":7}\n');
|
|
});
|
|
});
|