58ca4e68db
- Go backend API with full CRUD for all modules (CRM, Sales, Finance, HR, Legal, Marketing, Support, Purchase, Inventory, Projects, Automation, Analytics) - Rust analytics service with parallel report generation - C runtime with POSIX shared memory IPC - PostgreSQL schema with 30+ tables, full migrations - Redis cache, sessions, pub/sub - Kafka event streaming with Zookeeper - WebSocket hub for real-time updates - Automation engine with cron jobs, workflows, event triggers - JWT authentication, multi-tenant from start - Docker Compose with all services - Nginx reverse proxy with rate limiting - Integration tests passing - Feature gap analysis against Fortnox/Odoo/Visma Refs: BOC-001
128 lines
3.3 KiB
TypeScript
128 lines
3.3 KiB
TypeScript
/**
|
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*/
|
|
import {Config} from '@jest/types';
|
|
import type {SerializableError} from '@jest/test-result';
|
|
import {Test} from '@jest/test-result';
|
|
import {TestEvents} from '@jest/test-result';
|
|
import type {TestResult} from '@jest/test-result';
|
|
import {TestWatcher} from 'jest-watcher';
|
|
|
|
declare abstract class BaseTestRunner {
|
|
protected readonly _globalConfig: Config.GlobalConfig;
|
|
protected readonly _context: TestRunnerContext;
|
|
readonly isSerial?: boolean;
|
|
abstract readonly supportsEventEmitters: boolean;
|
|
constructor(_globalConfig: Config.GlobalConfig, _context: TestRunnerContext);
|
|
}
|
|
|
|
export declare abstract class CallbackTestRunner
|
|
extends BaseTestRunner
|
|
implements CallbackTestRunnerInterface
|
|
{
|
|
readonly supportsEventEmitters = false;
|
|
abstract runTests(
|
|
tests: Array<Test>,
|
|
watcher: TestWatcher,
|
|
onStart: OnTestStart,
|
|
onResult: OnTestSuccess,
|
|
onFailure: OnTestFailure,
|
|
options: TestRunnerOptions,
|
|
): Promise<void>;
|
|
}
|
|
|
|
export declare interface CallbackTestRunnerInterface {
|
|
readonly isSerial?: boolean;
|
|
readonly supportsEventEmitters?: boolean;
|
|
runTests(
|
|
tests: Array<Test>,
|
|
watcher: TestWatcher,
|
|
onStart: OnTestStart,
|
|
onResult: OnTestSuccess,
|
|
onFailure: OnTestFailure,
|
|
options: TestRunnerOptions,
|
|
): Promise<void>;
|
|
}
|
|
|
|
export {Config};
|
|
|
|
export declare abstract class EmittingTestRunner
|
|
extends BaseTestRunner
|
|
implements EmittingTestRunnerInterface
|
|
{
|
|
readonly supportsEventEmitters = true;
|
|
abstract runTests(
|
|
tests: Array<Test>,
|
|
watcher: TestWatcher,
|
|
options: TestRunnerOptions,
|
|
): Promise<void>;
|
|
abstract on<Name extends keyof TestEvents>(
|
|
eventName: Name,
|
|
listener: (eventData: TestEvents[Name]) => void | Promise<void>,
|
|
): UnsubscribeFn;
|
|
}
|
|
|
|
export declare interface EmittingTestRunnerInterface {
|
|
readonly isSerial?: boolean;
|
|
readonly supportsEventEmitters: true;
|
|
runTests(
|
|
tests: Array<Test>,
|
|
watcher: TestWatcher,
|
|
options: TestRunnerOptions,
|
|
): Promise<void>;
|
|
on<Name extends keyof TestEvents>(
|
|
eventName: Name,
|
|
listener: (eventData: TestEvents[Name]) => void | Promise<void>,
|
|
): UnsubscribeFn;
|
|
}
|
|
|
|
export declare type JestTestRunner = CallbackTestRunner | EmittingTestRunner;
|
|
|
|
export declare type OnTestFailure = (
|
|
test: Test,
|
|
serializableError: SerializableError,
|
|
) => Promise<void>;
|
|
|
|
export declare type OnTestStart = (test: Test) => Promise<void>;
|
|
|
|
export declare type OnTestSuccess = (
|
|
test: Test,
|
|
testResult: TestResult,
|
|
) => Promise<void>;
|
|
|
|
export {Test};
|
|
|
|
export {TestEvents};
|
|
|
|
declare class TestRunner extends EmittingTestRunner {
|
|
#private;
|
|
runTests(
|
|
tests: Array<Test>,
|
|
watcher: TestWatcher,
|
|
options: TestRunnerOptions,
|
|
): Promise<void>;
|
|
on<Name extends keyof TestEvents>(
|
|
eventName: Name,
|
|
listener: (eventData: TestEvents[Name]) => void | Promise<void>,
|
|
): UnsubscribeFn;
|
|
}
|
|
export default TestRunner;
|
|
|
|
export declare type TestRunnerContext = {
|
|
changedFiles?: Set<string>;
|
|
sourcesRelatedToTestsInChangedFiles?: Set<string>;
|
|
};
|
|
|
|
export declare type TestRunnerOptions = {
|
|
serial: boolean;
|
|
};
|
|
|
|
export {TestWatcher};
|
|
|
|
export declare type UnsubscribeFn = () => void;
|
|
|
|
export {};
|