Fill Command-Line Options

    # Fill Command-Line Options

    Fill is a [pytest](https://docs.pytest.org/en/stable/)-based command.
    This page lists custom options that the `fill` command provides. To see
    the full list of options that is available to fill (including the
    standard pytest and plugin command-line options) use
    `fill --pytest-help`.

    ## Command Help Output

    ```text
    usage: fill [-h] [--evm-bin EVM_BIN] [--t8n-server-url T8N_SERVER_URL]
        [--chain-id CHAIN_ID] [--traces] [--verify-fixtures]
        [--verify-fixtures-bin VERIFY_FIXTURES_BIN]
        [--filler-path FILLER_PATH] [--output OUTPUT] [--clean]
        [--single-fixture-per-file] [--no-html] [--build-name BUILD_NAME]
        [--skip-index SKIP_INDEX] [--block-gas-limit BLOCK_GAS_LIMIT]
        [--generate-pre-alloc-groups] [--use-pre-alloc-groups]
        [--generate-all-formats] [--evm-dump-dir EVM_DUMP_DIR]
        [--post-verifications] [--forks] [--fork FORK] [--from FROM]
        [--until UNTIL] [--rpc-endpoint RPC_ENDPOINT]
        [--show-ported-from [SHOW_PORTED_FROM]]
        [--skip-coverage-missed-reason]
        [--ported-from-output-file PORTED_FROM_OUTPUT_FILE]
        [--links-as-filled] [--gas-benchmark-values GAS_BENCHMARK_VALUES]
        [--fixed-opcode-count [FIXED_OPCODE_COUNT]]
        [--address-stubs ADDRESS_STUBS] [--include-benchmark]

options: -h, --help show this help message and exit

Arguments defining evm executable behavior: --evm-bin EVM_BIN Path to an evm executable (or name of an executable in the PATH) that provides t8n. Default: ethereum- spec-evm-resolver. --t8n-server-url T8N_SERVER_URL [INTERNAL USE ONLY] URL of the t8n server to use. Used by framework tests/ci; not intended for regular CLI use. --chain-id CHAIN_ID Specify the chain ID for the test filling. Default: 1. --traces Collect traces of execution info from the transition tool. --verify-fixtures Verify generated fixture JSON files using geth's evm blocktest command. By default, the same evm binary as for the t8n tool is used. A different (geth) evm binary may be specified via --verify-fixtures-bin, this must be specified if filling with a non-geth t8n tool that does not support blocktest. --verify-fixtures-bin VERIFY_FIXTURES_BIN Path to an evm executable that provides the blocktest command. Default: The first (geth) 'evm' entry in PATH.

Arguments defining filler location and output: --filler-path FILLER_PATH Path to filler directives --output OUTPUT Directory path to store the generated test fixtures. Must be empty if it exists. If the specified path ends in '.tar.gz', then the specified tarball is additionally created (the fixtures are still written to the specified path without the '.tar.gz' suffix). Tarball output automatically enables --generate-all- formats. Can be deleted. Default: './fixtures'. --clean Clean (remove) the output directory before filling fixtures. --single-fixture-per-file Don't group fixtures in JSON files by test function; write each fixture to its own file. This can be used to increase the granularity of --verify-fixtures. --no-html Don't generate an HTML test report (in the output directory). The --html flag can be used to specify a different path. --build-name BUILD_NAME Specify a build name for the fixtures.ini file, e.g., 'stable'. --skip-index SKIP_INDEX Skip generating an index file for all produced fixtures. --block-gas-limit BLOCK_GAS_LIMIT Default gas limit ceiling for blocks and tests that attempt to consume an entire block's gas. (Default: 120000000) --generate-pre-alloc-groups Generate pre-allocation groups (phase 1 only). --use-pre-alloc-groups Fill tests using existing pre-allocation groups (phase 2 only). --generate-all-formats Generate all fixture formats including BlockchainEngineX. Enables two-phase execution: Phase 1 generates pre-allocation groups, phase 2 generates all supported fixture formats.

Arguments defining debug behavior: --evm-dump-dir, --t8n-dump-dir EVM_DUMP_DIR Path to dump the transition tool debug output. Only creates debug output when explicitly specified. --post-verifications Include a postVerifications field in fixture output that records which post-state checks were performed during filling.

Specify the fork range to generate fixtures for: --forks Display forks supported by the test framework and exit. --fork FORK Only fill tests for the specified fork. --from FROM Fill tests from and including the specified fork. --until UNTIL Fill tests until and including the specified fork.

Arguments defining pre-allocation behavior during test filling.: --rpc-endpoint RPC_ENDPOINT RPC endpoint to an execution client.

Arguments for showing ported_from marker information: --show-ported-from [SHOW_PORTED_FROM] Show information from @pytest.mark.ported_from markers. Use '--show-ported-from' or '--show-ported- from=paths' to show static filler paths. Use '--show- ported-from=prs' to show PR URLs. --skip-coverage-missed-reason When using --show-ported-from, exclude tests that have coverage_missed_reason in their @pytest.mark.ported_from marker. These are tests that were intentionally not ported from the original static filler files, typically because they are redundant or obsolete. This helps filter out accepted coverage gaps when analyzing test coverage. --ported-from-output-file PORTED_FROM_OUTPUT_FILE Output file for ported_from information. --links-as-filled Convert URLs or paths to filled test file paths for coverage script. Used in combination with --show- ported-from.

Arguments for benchmark test execution: --gas-benchmark-values GAS_BENCHMARK_VALUES Gas limits (in millions) for benchmark tests. Example: '100,500' runs tests with 100M and 500M gas. Benchmark outputs are grouped under for_{fork}_at_XXXXM/ subdirectories. Cannot be used with --fixed-opcode- count. --fixed-opcode-count [FIXED_OPCODE_COUNT] Opcode counts (in thousands) for benchmark tests. Granularity rules (for ≤10% CALL overhead): cheap ops (1-2 gas): integers only, no sub-1K; medium ops (3-5 gas): 0.5 increments, min 0.5K; expensive ops (6+ gas): 0.25 increments, min 0.25K; very expensive (100+ gas): 0.25 increments, min 0.01K. Example: '0.5,1,2' runs 500, 1K, 2K opcodes. Without value, uses .fixed_opcode_counts.json config. Cannot be used with --gas-benchmark-values. --address-stubs ADDRESS_STUBS Address stubs mapping stub names to on-chain addresses. Can be a JSON string or path to a JSON file. --include-benchmark Include tests/benchmark/ during collection even when no benchmark path is passed as a positional argument. Needed when collecting both tests/ and tests/benchmark/ in a single pytest invocation, since pytest's path deduplication drops the broader tests/ arg.

    ```

    ---

    *This page was automatically generated from `fill --help` output.*