@badeball/cypress-cucumber-preprocessor
Version:
[](https://github.com/badeball/cypress-cucumber-preprocessor/actions/workflows/build.yml) [ • 1.8 kB
TypeScript
import { ICypressConfiguration } from "@badeball/cypress-configuration";
import { Expression, ParameterTypeRegistry } from "@cucumber/cucumber-expressions";
import { PickleStepType } from "@cucumber/messages";
import { IPreprocessorConfiguration } from "../preprocessor-configuration";
import { IStepDefinition } from "../registry";
import { Position } from "../helpers/source-map";
export interface DiagnosticStep {
source: string;
line: number;
text: string;
}
export interface UnmatchedStep {
step: DiagnosticStep;
type: PickleStepType;
argument: "docString" | "dataTable" | null;
parameterTypeRegistry: ParameterTypeRegistry;
stepDefinitionHints: {
stepDefinitions: string[];
stepDefinitionPatterns: string[];
stepDefinitionPaths: string[];
};
}
export interface AmbiguousStep {
step: DiagnosticStep;
definitions: IStepDefinition<unknown[], Mocha.Context>[];
}
export interface DiagnosticResult {
definitionsUsage: {
definition: IStepDefinition<unknown[], Mocha.Context>;
steps: DiagnosticStep[];
}[];
unmatchedSteps: UnmatchedStep[];
ambiguousSteps: AmbiguousStep[];
}
export declare function expressionToString(expression: Expression): string;
export declare function strictCompare<T>(a: T, b: T): boolean;
export declare function comparePosition(a: Position, b: Position): boolean;
export declare function compareStepDefinition(a: IStepDefinition<unknown[], Mocha.Context>, b: IStepDefinition<unknown[], Mocha.Context>): boolean;
export declare function position(definition: IStepDefinition<unknown[], Mocha.Context>): Position;
export declare function diagnose(configuration: {
cypress: ICypressConfiguration;
preprocessor: IPreprocessorConfiguration;
}): Promise<DiagnosticResult>;