Skip to content

Test Worst Compute

Documentation for tests/zkevm/test_worst_compute.py@44293f1e.

Generate fixtures for these test cases for Prague with:

fill -v tests/zkevm/test_worst_compute.py --fork Prague
Tests zkEVMs worst-case compute scenarios.

Tests zkEVMs worst-case compute scenarios.

Tests running worst-case compute opcodes and precompile scenarios for zkEVMs.

Test Functions Overview

Name Type Cases (Prague) Description
test_worst_keccak blockchain_test 1 Test running a block with as many KECCAK256 permutations as possible.
test_worst_precompile_only_data_input blockchain_test 3 Test running a block with as many precompile calls which have a single data input.
test_worst_modexp blockchain_test 1 Test running a block with as many MODEXP calls as possible.
test_worst_precompile_fixed_cost blockchain_test 13 Test running a block filled with a precompile with fixed cost.
test_worst_jumps blockchain_test 1 Test running a JUMP-intensive contract.
test_worst_jumpdests blockchain_test 1 Test running a JUMPDEST-intensive contract.
test_worst_binop_simple blockchain_test 21 Test running a block with as many binary instructions (takes two args, produces one value)
test_worst_unop blockchain_test 2 Test running a block with as many unary instructions (takes one arg, produces one value)
test_worst_shifts blockchain_test 2 Test running a block with as many shift instructions with non-trivial arguments.
test_worst_mod blockchain_test 8 Test running a block with as many MOD instructions with arguments of the parametrized range.