syntropylog
Version:
An instance manager with observability for Node.js applications
34 lines (33 loc) • 1.04 kB
TypeScript
/**
* MockBrokerAdapter - Framework Agnostic Mock
*
* This mock provides a testing-agnostic version of IBrokerAdapter
* that can be used with both Vitest and Jest without conflicts.
*/
export interface BrokerMessage {
id: string;
data: any;
metadata?: Record<string, any>;
timestamp?: string;
}
export type MessageHandler = (message: BrokerMessage) => Promise<void> | void;
export interface IBrokerAdapter {
connect(): Promise<void>;
disconnect(): Promise<void>;
publish(topic: string, message: BrokerMessage): Promise<void>;
subscribe(topic: string, handler: MessageHandler): Promise<void>;
}
export declare class MockBrokerAdapter implements IBrokerAdapter {
private spyFn;
private errors;
private timeouts;
readonly connect: any;
readonly disconnect: any;
readonly publish: any;
readonly subscribe: any;
readonly setError: any;
readonly setTimeout: any;
readonly reset: any;
constructor(spyFn?: (implementation?: any) => any);
private createMock;
}