UNPKG

@stryker-mutator/core

Version:

The extendable JavaScript mutation testing framework

42 lines 2.5 kB
/// <reference types="node" resolution-mode="require"/> /// <reference types="node" resolution-mode="require"/> import { CpuInfo } from 'os'; import type { Dirent } from 'fs'; import { ClearTextReporterOptions, Location, Mutant, schema } from '@stryker-mutator/api/core'; import { Logger } from 'log4js'; import sinon from 'sinon'; import { ReplaySubject } from 'rxjs'; import { TestRunner } from '@stryker-mutator/api/test-runner'; import { I } from '@stryker-mutator/util'; import { Pool, ConcurrencyTokenProvider } from '../../src/concurrent/index.js'; import { CheckerFacade } from '../../src/checker/index.js'; import { FileSystem } from '../../src/fs/file-system.js'; import { TSConfig } from '../../src/sandbox/ts-config-preprocessor.js'; export type Mutable<T> = { -readonly [K in keyof T]: T[K]; }; export type Mock<T> = Mutable<sinon.SinonStubbedInstance<T>>; export declare function mock<T>(constructorFn: sinon.StubbableType<T>): Mock<T>; export declare function createFileSystemMock(): sinon.SinonStubbedInstance<FileSystem>; export declare const createClearTextReporterOptions: (overrides?: Partial<ClearTextReporterOptions> | undefined) => ClearTextReporterOptions & Partial<ClearTextReporterOptions>; export type ConcurrencyTokenProviderMock = sinon.SinonStubbedInstance<I<ConcurrencyTokenProvider>> & { testRunnerToken$: ReplaySubject<number>; checkerToken$: ReplaySubject<number>; }; export declare function createConcurrencyTokenProviderMock(): ConcurrencyTokenProviderMock; export declare function createTestRunnerPoolMock(): sinon.SinonStubbedInstance<I<Pool<TestRunner>>>; export declare function createCheckerPoolMock(): sinon.SinonStubbedInstance<I<Pool<I<CheckerFacade>>>>; export declare const logger: () => sinon.SinonStubbedInstance<Logger>; export declare function createCpuInfo(overrides?: Partial<CpuInfo>): CpuInfo; export declare function serializeTSConfig(content: TSConfig): string; interface CreateDirentOptions { name: string; isDirectory: boolean; } export declare function createDirent(overrides?: Partial<CreateDirentOptions>): Dirent; export declare function createMutant(overrides?: Partial<Mutant>): Mutant; export declare function loc(startLine: number, startColumn: number): schema.OpenEndLocation; export declare function loc(startLine: number, startColumn: number, endLine: number, endColumn: number): Location; export declare function pos(line: number, column: number): schema.Position; export {}; //# sourceMappingURL=producers.d.ts.map