hardhat
Version:
Hardhat is an extensible developer tool that helps smart contract developers increase productivity by reliably bringing together the tools they want.
42 lines • 2.18 kB
TypeScript
import type { TaskOverrideActionFunction } from "../../../../../types/tasks.js";
import type { FunctionGasSnapshotCheckResult } from "../../function-gas-snapshots.js";
import type { SnapshotCheatcodesCheckResult, RenamedSnapshotGroup } from "../../snapshot-cheatcodes.js";
import type { SuiteResult } from "@nomicfoundation/edr";
interface GasAnalyticsTestActionArguments {
snapshot: boolean;
snapshotCheck: boolean;
grep?: string;
grepExclude?: string;
testFiles?: string[];
}
export interface SnapshotResult {
functionGasSnapshotsWritten: boolean;
renamedGroups: RenamedSnapshotGroup[];
}
export interface SnapshotCheckResult {
functionGasSnapshotsCheck: FunctionGasSnapshotCheckResult;
snapshotCheatcodesCheck: SnapshotCheatcodesCheckResult;
}
declare const runSolidityTests: TaskOverrideActionFunction<GasAnalyticsTestActionArguments>;
/**
* Whether a `test solidity` run is scoped to a subset of tests (via `--grep`,
* `--grep-exclude`, or explicit files). On a scoped run, added/missing
* snapshots are artifacts of the filter rather than real differences, so they
* aren't reported.
*
* An explicit empty pattern (e.g. `--grep ""`) is normalized to "no filter" by
* the base task before it runs EDR (see `solidity-test/helpers.ts`), so it runs
* the full suite; treat it as unfiltered here so real differences still
* surface. (An omitted option already arrives as `undefined`.)
*/
export declare function isFilteredRun(args: {
grep?: string;
grepExclude?: string;
testFiles?: string[];
}): boolean;
export declare function handleSnapshot(basePath: string, suiteResults: SuiteResult[], testsPassed: boolean): Promise<SnapshotResult>;
export declare function logSnapshotResult(result: SnapshotResult, logger?: typeof console.log): void;
export declare function handleSnapshotCheck(basePath: string, suiteResults: SuiteResult[]): Promise<SnapshotCheckResult>;
export declare function logSnapshotCheckResult({ functionGasSnapshotsCheck, snapshotCheatcodesCheck }: SnapshotCheckResult, logger?: typeof console.log, isFiltered?: boolean): void;
export default runSolidityTests;
//# sourceMappingURL=task-action.d.ts.map