Skip to content

test_invalid_zero_gas_g2msm()

Documentation for tests/prague/eip2537_bls_12_381_precompiles/test_bls12_variable_length_input_contracts.py::test_invalid_zero_gas_g2msm@e9958ed2.

Generate fixtures for these test cases for Osaka with:

fill -v tests/prague/eip2537_bls_12_381_precompiles/test_bls12_variable_length_input_contracts.py::test_invalid_zero_gas_g2msm --fork Osaka

Test the BLS12_G2MSM precompile calling it with zero gas.

Source code in tests/prague/eip2537_bls_12_381_precompiles/test_bls12_variable_length_input_contracts.py
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
@pytest.mark.parametrize(
    "precompile_gas_list,precompile_data_length_list",
    [
        pytest.param(
            [0],
            [G2_MSM_K_INPUT_LENGTH],
            id="zero_gas_passed",
        ),
    ],
)
@pytest.mark.parametrize("expected_output", [Spec.INVALID], ids=[""])
@pytest.mark.parametrize("precompile_address", [Spec.G2MSM])
def test_invalid_zero_gas_g2msm(
    state_test: StateTestFiller,
    env: Environment,
    pre: Alloc,
    post: dict,
    tx: Transaction,
) -> None:
    """Test the BLS12_G2MSM precompile calling it with zero gas."""
    state_test(
        env=env,
        pre=pre,
        tx=tx,
        post=post,
    )

Parametrized Test Cases

This test case is only parametrized by fork and fixture format.

Test ID (Abbreviated) precompile_address expected_output precompile_gas_list precompile_data_length_list
...fork_Prague-state_test-precompile_address_14--zero_gas_passed 14 [0] [288]
...fork_Prague-blockchain_test_from_state_test-precompile_address_14--zero_gas_passed 14 [0] [288]
...fork_Osaka-state_test-precompile_address_14--zero_gas_passed 14 [0] [288]
...fork_Osaka-blockchain_test_from_state_test-precompile_address_14--zero_gas_passed 14 [0] [288]