@firfi/quint-connect
Version:
Model-based testing framework connecting Quint specifications to TypeScript implementations
25 lines • 1.23 kB
JavaScript
import { Effect, Schema } from "effect";
export { defaultConfig } from "./driver/types.js";
export { generateTraces, QuintError, QuintNotFoundError } from "./cli/quint.js";
export { TraceGeneration, traceGenerationLayer } from "./cli/trace-generation.js";
export { NoTracesError, quintRun, quintRunWithTraceGeneration, StateMismatchError, TraceReplayError } from "./runner/runner.js";
export { ITFBigInt, ITFList, ITFMap, ItfOption, ITFSet, ItfTrace, ITFTuple, ITFUnserializable, ITFVariant, MbtMeta, UntypedTraceSchema } from "./itf/schema.js";
export const stateCheck = (deserializeState, compareState) => ({ compareState, deserializeState });
export const defineDriver = (schema, factory) => ({
create: () => Effect.sync(() => {
const result = factory();
const actions = {};
for (const [name, fields] of Object.entries(schema)) {
actions[name] = {
picks: Schema.Struct(fields),
handler: result[name]
};
}
return {
actions,
...(result.getState ? { getState: result.getState } : {}),
...(result.config ? { config: result.config } : {})
};
})
});
//# sourceMappingURL=effect.js.map