mirror of
https://github.com/proffesor-for-testing/agentic-qe.git
synced 2026-09-19 08:45:47 +08:00
e82a7240ec
11 improvements across 4 priority tiers, all integrated into production code paths with 416 new tests across 33 test files. Each wave passed a brutal honesty audit with all findings resolved. Wave 0-2 (P0/P1): Middleware chain, microcompact, tool concurrency, retry engine, session durability, prompt cache latch, startup fast paths, hook security hardening. Wave 3 (P2): 4-tier context compaction pipeline, plugin architecture with local/GitHub/npm sources. Wave 4 (P3): QE Quality Daemon — priority queue, git watcher (with Linux polling fallback), coverage delta analyzer, CI monitor, test suggester, nightly consolidation, notification service with SSRF guard, persistent SQLite-backed memory, CLI commands, MCP startup integration. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
44 lines
1.5 KiB
TypeScript
44 lines
1.5 KiB
TypeScript
/**
|
|
* Tests for the QE Quality Daemon CLI commands (IMP-10).
|
|
*/
|
|
|
|
import { describe, it, expect } from 'vitest';
|
|
import { createDaemonCommand } from '../../../src/cli/commands/daemon';
|
|
|
|
describe('Daemon CLI Command', () => {
|
|
it('creates a commander Command with name "daemon"', () => {
|
|
const cmd = createDaemonCommand();
|
|
expect(cmd.name()).toBe('daemon');
|
|
});
|
|
|
|
it('has start, stop, status, notifications, and clear-notifications subcommands', () => {
|
|
const cmd = createDaemonCommand();
|
|
const subcommands = cmd.commands.map((c) => c.name());
|
|
|
|
expect(subcommands).toContain('start');
|
|
expect(subcommands).toContain('stop');
|
|
expect(subcommands).toContain('status');
|
|
expect(subcommands).toContain('notifications');
|
|
expect(subcommands).toContain('clear-notifications');
|
|
});
|
|
|
|
it('start command has --tick-interval and --ci-interval options', () => {
|
|
const cmd = createDaemonCommand();
|
|
const start = cmd.commands.find((c) => c.name() === 'start')!;
|
|
const optionNames = start.options.map((o) => o.long);
|
|
|
|
expect(optionNames).toContain('--tick-interval');
|
|
expect(optionNames).toContain('--ci-interval');
|
|
});
|
|
|
|
it('notifications command has --unread, --limit, and --type options', () => {
|
|
const cmd = createDaemonCommand();
|
|
const notifs = cmd.commands.find((c) => c.name() === 'notifications')!;
|
|
const optionNames = notifs.options.map((o) => o.long);
|
|
|
|
expect(optionNames).toContain('--unread');
|
|
expect(optionNames).toContain('--limit');
|
|
expect(optionNames).toContain('--type');
|
|
});
|
|
});
|