Skip to content

test_worst_swap()

Documentation for tests/benchmark/test_worst_compute.py::test_worst_swap@e9958ed2.

Generate fixtures for these test cases for Osaka with:

fill -v tests/benchmark/test_worst_compute.py::test_worst_swap -m benchmark

Test running a block with as many SWAP as possible.

Source code in tests/benchmark/test_worst_compute.py
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
@pytest.mark.parametrize(
    "opcode",
    [
        Op.SWAP1,
        Op.SWAP2,
        Op.SWAP3,
        Op.SWAP4,
        Op.SWAP5,
        Op.SWAP6,
        Op.SWAP7,
        Op.SWAP8,
        Op.SWAP9,
        Op.SWAP10,
        Op.SWAP11,
        Op.SWAP12,
        Op.SWAP13,
        Op.SWAP14,
        Op.SWAP15,
        Op.SWAP16,
    ],
)
def test_worst_swap(
    benchmark_test: BenchmarkTestFiller,
    opcode: Opcode,
) -> None:
    """Test running a block with as many SWAP as possible."""
    benchmark_test(
        code_generator=JumpLoopGenerator(
            attack_block=opcode, setup=Op.PUSH0 * opcode.min_stack_height
        ),
    )

Parametrized Test Cases

This test case is only parametrized by fork.

Test ID (Abbreviated) opcode
...fork_Prague-blockchain_test-opcode_SWAP1 SWAP1
...fork_Prague-blockchain_test-opcode_SWAP2 SWAP2
...fork_Prague-blockchain_test-opcode_SWAP3 SWAP3
...fork_Prague-blockchain_test-opcode_SWAP4 SWAP4
...fork_Prague-blockchain_test-opcode_SWAP5 SWAP5
...fork_Prague-blockchain_test-opcode_SWAP6 SWAP6
...fork_Prague-blockchain_test-opcode_SWAP7 SWAP7
...fork_Prague-blockchain_test-opcode_SWAP8 SWAP8
...fork_Prague-blockchain_test-opcode_SWAP9 SWAP9
...fork_Prague-blockchain_test-opcode_SWAP10 SWAP10
...fork_Prague-blockchain_test-opcode_SWAP11 SWAP11
...fork_Prague-blockchain_test-opcode_SWAP12 SWAP12
...fork_Prague-blockchain_test-opcode_SWAP13 SWAP13
...fork_Prague-blockchain_test-opcode_SWAP14 SWAP14
...fork_Prague-blockchain_test-opcode_SWAP15 SWAP15
...fork_Prague-blockchain_test-opcode_SWAP16 SWAP16
...fork_Osaka-blockchain_test-opcode_SWAP1 SWAP1
...fork_Osaka-blockchain_test-opcode_SWAP2 SWAP2
...fork_Osaka-blockchain_test-opcode_SWAP3 SWAP3
...fork_Osaka-blockchain_test-opcode_SWAP4 SWAP4
...fork_Osaka-blockchain_test-opcode_SWAP5 SWAP5
...fork_Osaka-blockchain_test-opcode_SWAP6 SWAP6
...fork_Osaka-blockchain_test-opcode_SWAP7 SWAP7
...fork_Osaka-blockchain_test-opcode_SWAP8 SWAP8
...fork_Osaka-blockchain_test-opcode_SWAP9 SWAP9
...fork_Osaka-blockchain_test-opcode_SWAP10 SWAP10
...fork_Osaka-blockchain_test-opcode_SWAP11 SWAP11
...fork_Osaka-blockchain_test-opcode_SWAP12 SWAP12
...fork_Osaka-blockchain_test-opcode_SWAP13 SWAP13
...fork_Osaka-blockchain_test-opcode_SWAP14 SWAP14
...fork_Osaka-blockchain_test-opcode_SWAP15 SWAP15
...fork_Osaka-blockchain_test-opcode_SWAP16 SWAP16