swarmdo 1.4.8 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/helpers/statusline.cjs +7 -7
- package/README.md +3 -1
- package/package.json +5 -3
- package/v3/@swarmdo/cli/dist/src/commands/hooks.js +26 -24
- package/v3/@swarmdo/cli/dist/src/commands/index.js +4 -0
- package/v3/@swarmdo/cli/dist/src/commands/integrations.d.ts +14 -0
- package/v3/@swarmdo/cli/dist/src/commands/integrations.js +158 -0
- package/v3/@swarmdo/cli/dist/src/commands/memory.js +50 -1
- package/v3/@swarmdo/cli/dist/src/commands/providers.js +3 -0
- package/v3/@swarmdo/cli/dist/src/commands/release.d.ts +15 -0
- package/v3/@swarmdo/cli/dist/src/commands/release.js +224 -0
- package/v3/@swarmdo/cli/dist/src/commands/security.js +14 -0
- package/v3/@swarmdo/cli/dist/src/commands/transcript.js +82 -1
- package/v3/@swarmdo/cli/dist/src/commands/usage.js +80 -1
- package/v3/@swarmdo/cli/dist/src/config-lint/lint.js +11 -1
- package/v3/@swarmdo/cli/dist/src/init/statusline-generator.js +6 -6
- package/v3/@swarmdo/cli/dist/src/integrations/integrations.d.ts +54 -0
- package/v3/@swarmdo/cli/dist/src/integrations/integrations.js +162 -0
- package/v3/@swarmdo/cli/dist/src/mcp-tools/agent-execute-core.js +25 -3
- package/v3/@swarmdo/cli/dist/src/mcp-tools/agentdb-tools.js +8 -8
- package/v3/@swarmdo/cli/dist/src/memory/graph-edge-writer.d.ts +12 -0
- package/v3/@swarmdo/cli/dist/src/memory/graph-edge-writer.js +32 -1
- package/v3/@swarmdo/cli/dist/src/memory-vault/watch.d.ts +32 -0
- package/v3/@swarmdo/cli/dist/src/memory-vault/watch.js +66 -0
- package/v3/@swarmdo/cli/dist/src/providers/openrouter-config.d.ts +91 -0
- package/v3/@swarmdo/cli/dist/src/providers/openrouter-config.js +186 -0
- package/v3/@swarmdo/cli/dist/src/release/release.d.ts +72 -0
- package/v3/@swarmdo/cli/dist/src/release/release.js +86 -0
- package/v3/@swarmdo/cli/dist/src/resilience/backoff.d.ts +23 -0
- package/v3/@swarmdo/cli/dist/src/resilience/backoff.js +30 -0
- package/v3/@swarmdo/cli/dist/src/swarmvector/model-router.js +14 -0
- package/v3/@swarmdo/cli/dist/src/transcript/search.d.ts +39 -0
- package/v3/@swarmdo/cli/dist/src/transcript/search.js +67 -0
- package/v3/@swarmdo/cli/dist/src/usage/diff.d.ts +69 -0
- package/v3/@swarmdo/cli/dist/src/usage/diff.js +112 -0
- package/v3/@swarmdo/cli/package.json +4 -4
- package/v3/@swarmdo/cli-core/dist/src/index.js +1 -1
- package/v3/@swarmdo/codex/dist/cli.js +0 -0
- package/v3/@swarmdo/hooks/dist/cli/guidance-cli.js +0 -0
- package/v3/@swarmdo/hooks/dist/statusline/index.d.ts +3 -3
- package/v3/@swarmdo/hooks/dist/statusline/index.js +3 -3
- package/v3/@swarmdo/integration/dist/__tests__/agentic-flow-agent.test.js +4 -1
- package/v3/@swarmdo/neural/dist/flash-attention.d.ts +1 -1
- package/v3/@swarmdo/neural/dist/flash-attention.js +1 -1
- package/v3/@swarmdo/plugin-agent-federation/dist/plugin.js +1 -1
- package/v3/@swarmdo/plugin-agent-federation/dist/transport/midstream-aware-loader.js +2 -2
- package/v3/@swarmdo/providers/dist/swarmvector-provider.d.ts +1 -1
- package/v3/@swarmdo/providers/dist/swarmvector-provider.js +1 -1
- package/v3/@swarmdo/security/dist/input-validator.d.ts +6 -6
- package/v3/@swarmdo/shared/dist/hooks/safety/git-commit.js +1 -1
- package/v3/@swarmdo/shared/dist/mcp/transport/http.js +8 -1
- package/v3/vendor/agentdb/package.json +0 -1
- package/v3/vendor/agentic-flow/package.json +0 -1
- package/.claude/scheduled_tasks.lock +0 -1
- package/.claude/skills/sdo-caveman-compress/scripts/__pycache__/__init__.cpython-314.pyc +0 -0
- package/.claude/skills/sdo-caveman-compress/scripts/__pycache__/__main__.cpython-314.pyc +0 -0
- package/.claude/skills/sdo-caveman-compress/scripts/__pycache__/cli.cpython-314.pyc +0 -0
- package/.claude/skills/sdo-caveman-compress/scripts/__pycache__/compress.cpython-314.pyc +0 -0
- package/.claude/skills/sdo-caveman-compress/scripts/__pycache__/detect.cpython-314.pyc +0 -0
- package/.claude/skills/sdo-caveman-compress/scripts/__pycache__/validate.cpython-314.pyc +0 -0
- package/v3/@swarmdo/plugin-iot-cognitum/dist/application/index.d.ts +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/application/index.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/application/iot-coordinator.d.ts +0 -138
- package/v3/@swarmdo/plugin-iot-cognitum/dist/application/iot-coordinator.js +0 -418
- package/v3/@swarmdo/plugin-iot-cognitum/dist/bin.d.ts +0 -15
- package/v3/@swarmdo/plugin-iot-cognitum/dist/bin.js +0 -240
- package/v3/@swarmdo/plugin-iot-cognitum/dist/cli-commands.d.ts +0 -7
- package/v3/@swarmdo/plugin-iot-cognitum/dist/cli-commands.js +0 -508
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/device-agent.d.ts +0 -54
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/device-agent.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/device-fleet.d.ts +0 -46
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/device-fleet.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/device-trust-level.d.ts +0 -18
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/device-trust-level.js +0 -28
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/index.d.ts +0 -5
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/index.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/telemetry.d.ts +0 -35
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/entities/telemetry.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/device-repository.d.ts +0 -11
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/device-repository.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/fleet-repository.d.ts +0 -9
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/fleet-repository.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/index.d.ts +0 -5
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/index.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/telemetry-repository.d.ts +0 -12
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/telemetry-repository.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/trust-history-repository.d.ts +0 -19
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/repositories/trust-history-repository.js +0 -2
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/anomaly-detection-service.d.ts +0 -44
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/anomaly-detection-service.js +0 -117
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/device-lifecycle-service.d.ts +0 -70
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/device-lifecycle-service.js +0 -194
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/firmware-orchestration-service.d.ts +0 -69
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/firmware-orchestration-service.js +0 -139
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/fleet-topology-service.d.ts +0 -34
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/fleet-topology-service.js +0 -101
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/index.d.ts +0 -10
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/index.js +0 -10
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/mesh-service.d.ts +0 -64
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/mesh-service.js +0 -70
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/sona-integration-service.d.ts +0 -44
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/sona-integration-service.js +0 -79
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/telemetry-ingestion-service.d.ts +0 -37
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/telemetry-ingestion-service.js +0 -39
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/telemetry-service.d.ts +0 -67
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/telemetry-service.js +0 -58
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/witness-verification-service.d.ts +0 -45
- package/v3/@swarmdo/plugin-iot-cognitum/dist/domain/services/witness-verification-service.js +0 -63
- package/v3/@swarmdo/plugin-iot-cognitum/dist/index.d.ts +0 -26
- package/v3/@swarmdo/plugin-iot-cognitum/dist/index.js +0 -17
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/agentdb-telemetry-repository.d.ts +0 -51
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/agentdb-telemetry-repository.js +0 -110
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/in-memory-device-repository.d.ts +0 -13
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/in-memory-device-repository.js +0 -25
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/in-memory-fleet-repository.d.ts +0 -11
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/in-memory-fleet-repository.js +0 -19
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/in-memory-trust-history-repository.d.ts +0 -11
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/in-memory-trust-history-repository.js +0 -27
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/index.d.ts +0 -6
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/index.js +0 -6
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/seed-client-factory.d.ts +0 -41
- package/v3/@swarmdo/plugin-iot-cognitum/dist/infrastructure/seed-client-factory.js +0 -64
- package/v3/@swarmdo/plugin-iot-cognitum/dist/mcp-tools.d.ts +0 -8
- package/v3/@swarmdo/plugin-iot-cognitum/dist/mcp-tools.js +0 -703
- package/v3/@swarmdo/plugin-iot-cognitum/dist/plugin.d.ts +0 -23
- package/v3/@swarmdo/plugin-iot-cognitum/dist/plugin.js +0 -239
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/anomaly-scan-worker.d.ts +0 -17
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/anomaly-scan-worker.js +0 -42
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/firmware-watch-worker.d.ts +0 -18
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/firmware-watch-worker.js +0 -45
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/health-probe-worker.d.ts +0 -19
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/health-probe-worker.js +0 -50
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/mesh-sync-worker.d.ts +0 -19
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/mesh-sync-worker.js +0 -47
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/telemetry-ingest-worker.d.ts +0 -17
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/telemetry-ingest-worker.js +0 -40
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/witness-audit-worker.d.ts +0 -18
- package/v3/@swarmdo/plugin-iot-cognitum/dist/workers/witness-audit-worker.js +0 -51
- package/v3/@swarmdo/testing/dist/fixtures/agent-fixtures.d.ts +0 -214
- package/v3/@swarmdo/testing/dist/fixtures/agent-fixtures.js +0 -595
- package/v3/@swarmdo/testing/dist/fixtures/agents.d.ts +0 -76
- package/v3/@swarmdo/testing/dist/fixtures/agents.js +0 -158
- package/v3/@swarmdo/testing/dist/fixtures/configurations.d.ts +0 -157
- package/v3/@swarmdo/testing/dist/fixtures/configurations.js +0 -337
- package/v3/@swarmdo/testing/dist/fixtures/index.d.ts +0 -10
- package/v3/@swarmdo/testing/dist/fixtures/index.js +0 -17
- package/v3/@swarmdo/testing/dist/fixtures/mcp-fixtures.d.ts +0 -329
- package/v3/@swarmdo/testing/dist/fixtures/mcp-fixtures.js +0 -714
- package/v3/@swarmdo/testing/dist/fixtures/memory-entries.d.ts +0 -159
- package/v3/@swarmdo/testing/dist/fixtures/memory-entries.js +0 -262
- package/v3/@swarmdo/testing/dist/fixtures/memory-fixtures.d.ts +0 -290
- package/v3/@swarmdo/testing/dist/fixtures/memory-fixtures.js +0 -547
- package/v3/@swarmdo/testing/dist/fixtures/swarm-fixtures.d.ts +0 -289
- package/v3/@swarmdo/testing/dist/fixtures/swarm-fixtures.js +0 -534
- package/v3/@swarmdo/testing/dist/fixtures/tasks.d.ts +0 -106
- package/v3/@swarmdo/testing/dist/fixtures/tasks.js +0 -229
- package/v3/@swarmdo/testing/dist/helpers/assertion-helpers.d.ts +0 -213
- package/v3/@swarmdo/testing/dist/helpers/assertion-helpers.js +0 -435
- package/v3/@swarmdo/testing/dist/helpers/assertions.d.ts +0 -135
- package/v3/@swarmdo/testing/dist/helpers/assertions.js +0 -217
- package/v3/@swarmdo/testing/dist/helpers/create-mock.d.ts +0 -96
- package/v3/@swarmdo/testing/dist/helpers/create-mock.js +0 -164
- package/v3/@swarmdo/testing/dist/helpers/index.d.ts +0 -14
- package/v3/@swarmdo/testing/dist/helpers/index.js +0 -22
- package/v3/@swarmdo/testing/dist/helpers/mock-factory.d.ts +0 -323
- package/v3/@swarmdo/testing/dist/helpers/mock-factory.js +0 -350
- package/v3/@swarmdo/testing/dist/helpers/setup-teardown.d.ts +0 -271
- package/v3/@swarmdo/testing/dist/helpers/setup-teardown.js +0 -446
- package/v3/@swarmdo/testing/dist/helpers/swarm-instance.d.ts +0 -142
- package/v3/@swarmdo/testing/dist/helpers/swarm-instance.js +0 -205
- package/v3/@swarmdo/testing/dist/helpers/test-application.d.ts +0 -190
- package/v3/@swarmdo/testing/dist/helpers/test-application.js +0 -138
- package/v3/@swarmdo/testing/dist/helpers/test-utils.d.ts +0 -274
- package/v3/@swarmdo/testing/dist/helpers/test-utils.js +0 -456
- package/v3/@swarmdo/testing/dist/index.d.ts +0 -42
- package/v3/@swarmdo/testing/dist/index.js +0 -66
- package/v3/@swarmdo/testing/dist/mocks/index.d.ts +0 -8
- package/v3/@swarmdo/testing/dist/mocks/index.js +0 -10
- package/v3/@swarmdo/testing/dist/mocks/mock-mcp-client.d.ts +0 -206
- package/v3/@swarmdo/testing/dist/mocks/mock-mcp-client.js +0 -575
- package/v3/@swarmdo/testing/dist/mocks/mock-services.d.ts +0 -287
- package/v3/@swarmdo/testing/dist/mocks/mock-services.js +0 -563
- package/v3/@swarmdo/testing/dist/regression/api-contract.d.ts +0 -109
- package/v3/@swarmdo/testing/dist/regression/api-contract.js +0 -374
- package/v3/@swarmdo/testing/dist/regression/index.d.ts +0 -18
- package/v3/@swarmdo/testing/dist/regression/index.js +0 -18
- package/v3/@swarmdo/testing/dist/regression/integration-regression.d.ts +0 -67
- package/v3/@swarmdo/testing/dist/regression/integration-regression.js +0 -334
- package/v3/@swarmdo/testing/dist/regression/performance-baseline.d.ts +0 -106
- package/v3/@swarmdo/testing/dist/regression/performance-baseline.js +0 -268
- package/v3/@swarmdo/testing/dist/regression/regression-runner.d.ts +0 -124
- package/v3/@swarmdo/testing/dist/regression/regression-runner.js +0 -227
- package/v3/@swarmdo/testing/dist/regression/security-regression.d.ts +0 -73
- package/v3/@swarmdo/testing/dist/regression/security-regression.js +0 -258
- package/v3/@swarmdo/testing/dist/setup.d.ts +0 -43
- package/v3/@swarmdo/testing/dist/setup.js +0 -91
- package/v3/@swarmdo/testing/dist/v2-compat/api-compat.test.d.ts +0 -10
- package/v3/@swarmdo/testing/dist/v2-compat/api-compat.test.js +0 -433
- package/v3/@swarmdo/testing/dist/v2-compat/cli-compat.test.d.ts +0 -10
- package/v3/@swarmdo/testing/dist/v2-compat/cli-compat.test.js +0 -352
- package/v3/@swarmdo/testing/dist/v2-compat/compatibility-validator.d.ts +0 -206
- package/v3/@swarmdo/testing/dist/v2-compat/compatibility-validator.js +0 -839
- package/v3/@swarmdo/testing/dist/v2-compat/hooks-compat.test.d.ts +0 -10
- package/v3/@swarmdo/testing/dist/v2-compat/hooks-compat.test.js +0 -428
- package/v3/@swarmdo/testing/dist/v2-compat/index.d.ts +0 -38
- package/v3/@swarmdo/testing/dist/v2-compat/index.js +0 -41
- package/v3/@swarmdo/testing/dist/v2-compat/mcp-compat.test.d.ts +0 -10
- package/v3/@swarmdo/testing/dist/v2-compat/mcp-compat.test.js +0 -419
- package/v3/@swarmdo/testing/dist/v2-compat/report-generator.d.ts +0 -34
- package/v3/@swarmdo/testing/dist/v2-compat/report-generator.js +0 -372
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @swarmdo/testing - Test Utilities
|
|
3
|
-
*
|
|
4
|
-
* Common test utilities for async operations, timing, retries, and more.
|
|
5
|
-
* Designed for robust V3 module testing.
|
|
6
|
-
*/
|
|
7
|
-
import { vi } from 'vitest';
|
|
8
|
-
/**
|
|
9
|
-
* Wait for a condition to be true with timeout
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* await waitFor(() => element.isVisible(), { timeout: 5000 });
|
|
13
|
-
*/
|
|
14
|
-
export declare function waitFor<T>(condition: () => T | Promise<T>, options?: WaitForOptions): Promise<T>;
|
|
15
|
-
/**
|
|
16
|
-
* Options for waitFor utility
|
|
17
|
-
*/
|
|
18
|
-
export interface WaitForOptions {
|
|
19
|
-
timeout?: number;
|
|
20
|
-
interval?: number;
|
|
21
|
-
timeoutMessage?: string;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Wait until a value changes
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* await waitUntilChanged(() => counter.value, { from: 0 });
|
|
28
|
-
*/
|
|
29
|
-
export declare function waitUntilChanged<T>(getValue: () => T | Promise<T>, options?: WaitUntilChangedOptions<T>): Promise<T>;
|
|
30
|
-
/**
|
|
31
|
-
* Options for waitUntilChanged utility
|
|
32
|
-
*/
|
|
33
|
-
export interface WaitUntilChangedOptions<T> {
|
|
34
|
-
from?: T;
|
|
35
|
-
timeout?: number;
|
|
36
|
-
interval?: number;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Retry an operation with exponential backoff
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* const result = await retry(
|
|
43
|
-
* async () => await fetchData(),
|
|
44
|
-
* { maxAttempts: 3, backoff: 100 }
|
|
45
|
-
* );
|
|
46
|
-
*/
|
|
47
|
-
export declare function retry<T>(operation: () => Promise<T>, options?: RetryOptions): Promise<T>;
|
|
48
|
-
/**
|
|
49
|
-
* Options for retry utility
|
|
50
|
-
*/
|
|
51
|
-
export interface RetryOptions {
|
|
52
|
-
maxAttempts?: number;
|
|
53
|
-
backoff?: number;
|
|
54
|
-
maxBackoff?: number;
|
|
55
|
-
exponential?: boolean;
|
|
56
|
-
onError?: (error: Error, attempt: number) => void;
|
|
57
|
-
shouldRetry?: (error: Error, attempt: number) => boolean;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Wrap an operation with a timeout
|
|
61
|
-
*
|
|
62
|
-
* @example
|
|
63
|
-
* const result = await withTimeout(
|
|
64
|
-
* async () => await longRunningOperation(),
|
|
65
|
-
* 5000
|
|
66
|
-
* );
|
|
67
|
-
*/
|
|
68
|
-
export declare function withTimeout<T>(operation: () => Promise<T>, timeoutMs: number, timeoutMessage?: string): Promise<T>;
|
|
69
|
-
/**
|
|
70
|
-
* Custom timeout error
|
|
71
|
-
*/
|
|
72
|
-
export declare class TimeoutError extends Error {
|
|
73
|
-
constructor(message: string);
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Sleep for a specified duration
|
|
77
|
-
*
|
|
78
|
-
* @example
|
|
79
|
-
* await sleep(1000); // Sleep for 1 second
|
|
80
|
-
*/
|
|
81
|
-
export declare function sleep(ms: number): Promise<void>;
|
|
82
|
-
/**
|
|
83
|
-
* Create a deferred promise that can be resolved/rejected externally
|
|
84
|
-
*
|
|
85
|
-
* @example
|
|
86
|
-
* const deferred = createDeferred<string>();
|
|
87
|
-
* setTimeout(() => deferred.resolve('done'), 1000);
|
|
88
|
-
* const result = await deferred.promise;
|
|
89
|
-
*/
|
|
90
|
-
export declare function createDeferred<T>(): Deferred<T>;
|
|
91
|
-
/**
|
|
92
|
-
* Deferred promise interface
|
|
93
|
-
*/
|
|
94
|
-
export interface Deferred<T> {
|
|
95
|
-
promise: Promise<T>;
|
|
96
|
-
resolve: (value: T) => void;
|
|
97
|
-
reject: (error: Error) => void;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Run operations in parallel with concurrency limit
|
|
101
|
-
*
|
|
102
|
-
* @example
|
|
103
|
-
* const results = await parallelLimit(
|
|
104
|
-
* items.map(item => () => processItem(item)),
|
|
105
|
-
* 5 // max 5 concurrent operations
|
|
106
|
-
* );
|
|
107
|
-
*/
|
|
108
|
-
export declare function parallelLimit<T>(operations: Array<() => Promise<T>>, limit: number): Promise<T[]>;
|
|
109
|
-
/**
|
|
110
|
-
* Measure execution time of an operation
|
|
111
|
-
*
|
|
112
|
-
* @example
|
|
113
|
-
* const { result, duration } = await measureTime(async () => {
|
|
114
|
-
* return await expensiveOperation();
|
|
115
|
-
* });
|
|
116
|
-
*/
|
|
117
|
-
export declare function measureTime<T>(operation: () => Promise<T>): Promise<{
|
|
118
|
-
result: T;
|
|
119
|
-
duration: number;
|
|
120
|
-
}>;
|
|
121
|
-
/**
|
|
122
|
-
* Create a mock clock for time-dependent tests
|
|
123
|
-
*
|
|
124
|
-
* @example
|
|
125
|
-
* const clock = createMockClock();
|
|
126
|
-
* clock.install();
|
|
127
|
-
* // ... tests with controlled time
|
|
128
|
-
* clock.uninstall();
|
|
129
|
-
*/
|
|
130
|
-
export declare function createMockClock(): MockClock;
|
|
131
|
-
/**
|
|
132
|
-
* Mock clock interface
|
|
133
|
-
*/
|
|
134
|
-
export interface MockClock {
|
|
135
|
-
install(): void;
|
|
136
|
-
uninstall(): void;
|
|
137
|
-
tick(ms: number): void;
|
|
138
|
-
setTime(time: number | Date): void;
|
|
139
|
-
getTime(): number;
|
|
140
|
-
runAllTimers(): void;
|
|
141
|
-
runPendingTimers(): void;
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* Create an event emitter for testing
|
|
145
|
-
*
|
|
146
|
-
* @example
|
|
147
|
-
* const emitter = createTestEmitter<{ message: string }>();
|
|
148
|
-
* const handler = vi.fn();
|
|
149
|
-
* emitter.on('message', handler);
|
|
150
|
-
* emitter.emit('message', 'hello');
|
|
151
|
-
*/
|
|
152
|
-
export declare function createTestEmitter<T extends Record<string, unknown>>(): TestEmitter<T>;
|
|
153
|
-
/**
|
|
154
|
-
* Test emitter interface
|
|
155
|
-
*/
|
|
156
|
-
export interface TestEmitter<T extends Record<string, unknown>> {
|
|
157
|
-
on<K extends keyof T>(event: K, handler: (data: T[K]) => void): () => void;
|
|
158
|
-
once<K extends keyof T>(event: K, handler: (data: T[K]) => void): () => void;
|
|
159
|
-
off<K extends keyof T>(event: K, handler: (data: T[K]) => void): void;
|
|
160
|
-
emit<K extends keyof T>(event: K, data: T[K]): void;
|
|
161
|
-
removeAllListeners(event?: keyof T): void;
|
|
162
|
-
listenerCount(event: keyof T): number;
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Create a test spy that records all calls
|
|
166
|
-
*
|
|
167
|
-
* @example
|
|
168
|
-
* const spy = createCallSpy();
|
|
169
|
-
* myFunction = spy.wrap(myFunction);
|
|
170
|
-
* // ... use myFunction
|
|
171
|
-
* expect(spy.calls).toHaveLength(3);
|
|
172
|
-
*/
|
|
173
|
-
export declare function createCallSpy<T extends (...args: unknown[]) => unknown>(): CallSpy<T>;
|
|
174
|
-
/**
|
|
175
|
-
* Call spy interface
|
|
176
|
-
*/
|
|
177
|
-
export interface CallSpy<T extends (...args: unknown[]) => unknown> {
|
|
178
|
-
calls: Array<{
|
|
179
|
-
args: Parameters<T>;
|
|
180
|
-
result?: ReturnType<T>;
|
|
181
|
-
error?: Error;
|
|
182
|
-
timestamp: number;
|
|
183
|
-
}>;
|
|
184
|
-
wrap(fn: T): T;
|
|
185
|
-
clear(): void;
|
|
186
|
-
getLastCall(): {
|
|
187
|
-
args: Parameters<T>;
|
|
188
|
-
result?: ReturnType<T>;
|
|
189
|
-
error?: Error;
|
|
190
|
-
timestamp: number;
|
|
191
|
-
} | undefined;
|
|
192
|
-
getCallCount(): number;
|
|
193
|
-
wasCalledWith(...args: Partial<Parameters<T>>): boolean;
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* Create a mock stream for testing streaming operations
|
|
197
|
-
*
|
|
198
|
-
* @example
|
|
199
|
-
* const stream = createMockStream(['chunk1', 'chunk2', 'chunk3']);
|
|
200
|
-
* for await (const chunk of stream) {
|
|
201
|
-
* console.log(chunk);
|
|
202
|
-
* }
|
|
203
|
-
*/
|
|
204
|
-
export declare function createMockStream<T>(chunks: T[], options?: MockStreamOptions): AsyncIterable<T>;
|
|
205
|
-
/**
|
|
206
|
-
* Mock stream options
|
|
207
|
-
*/
|
|
208
|
-
export interface MockStreamOptions {
|
|
209
|
-
delayMs?: number;
|
|
210
|
-
errorAt?: number;
|
|
211
|
-
errorMessage?: string;
|
|
212
|
-
}
|
|
213
|
-
/**
|
|
214
|
-
* Collect all items from an async iterable
|
|
215
|
-
*
|
|
216
|
-
* @example
|
|
217
|
-
* const items = await collectStream(asyncGenerator());
|
|
218
|
-
*/
|
|
219
|
-
export declare function collectStream<T>(stream: AsyncIterable<T>): Promise<T[]>;
|
|
220
|
-
/**
|
|
221
|
-
* Generate a unique ID for testing
|
|
222
|
-
*/
|
|
223
|
-
export declare function generateTestId(prefix?: string): string;
|
|
224
|
-
/**
|
|
225
|
-
* Create a test context that provides isolated test data
|
|
226
|
-
*
|
|
227
|
-
* @example
|
|
228
|
-
* const ctx = createTestContext();
|
|
229
|
-
* ctx.set('user', { id: 1, name: 'Test' });
|
|
230
|
-
* const user = ctx.get('user');
|
|
231
|
-
*/
|
|
232
|
-
export declare function createTestContext(): TestContext;
|
|
233
|
-
/**
|
|
234
|
-
* Test context interface
|
|
235
|
-
*/
|
|
236
|
-
export interface TestContext {
|
|
237
|
-
set<T>(key: string, value: T): void;
|
|
238
|
-
get<T>(key: string): T | undefined;
|
|
239
|
-
has(key: string): boolean;
|
|
240
|
-
delete(key: string): boolean;
|
|
241
|
-
clear(): void;
|
|
242
|
-
keys(): string[];
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* Assert that a promise rejects with a specific error type
|
|
246
|
-
*
|
|
247
|
-
* @example
|
|
248
|
-
* await expectToReject(
|
|
249
|
-
* async () => await riskyOperation(),
|
|
250
|
-
* ValidationError
|
|
251
|
-
* );
|
|
252
|
-
*/
|
|
253
|
-
export declare function expectToReject<T extends Error>(operation: () => Promise<unknown>, ErrorClass?: new (...args: unknown[]) => T): Promise<T>;
|
|
254
|
-
/**
|
|
255
|
-
* Create a mock function with tracking capabilities
|
|
256
|
-
*/
|
|
257
|
-
export declare function createTrackedMock<T extends (...args: unknown[]) => unknown>(implementation?: T): TrackedMock<T>;
|
|
258
|
-
/**
|
|
259
|
-
* Tracked mock interface
|
|
260
|
-
*/
|
|
261
|
-
export interface TrackedMock<T extends (...args: unknown[]) => unknown> {
|
|
262
|
-
(...args: Parameters<T>): ReturnType<T>;
|
|
263
|
-
mock: ReturnType<typeof vi.fn>;
|
|
264
|
-
calls: Array<{
|
|
265
|
-
args: Parameters<T>;
|
|
266
|
-
result?: ReturnType<T>;
|
|
267
|
-
error?: Error;
|
|
268
|
-
duration: number;
|
|
269
|
-
}>;
|
|
270
|
-
getAverageDuration(): number;
|
|
271
|
-
getTotalDuration(): number;
|
|
272
|
-
getErrors(): Error[];
|
|
273
|
-
}
|
|
274
|
-
//# sourceMappingURL=test-utils.d.ts.map
|