Skip to content

test_invalid_auth_signature()

Documentation for tests/prague/eip7702_set_code_tx/test_invalid_tx.py::test_invalid_auth_signature@83970623.

Generate fixtures for these test cases for Prague with:

fill -v tests/prague/eip7702_set_code_tx/test_invalid_tx.py::test_invalid_auth_signature --fork Prague

Test sending a transaction where one of the signature elements is out of range.

Source code in tests/prague/eip7702_set_code_tx/test_invalid_tx.py
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
@pytest.mark.parametrize(
    "v,r,s",
    [
        pytest.param(2**8, 1, 1, id="v=2**8"),
        pytest.param(1, 2**256, 1, id="r=2**256"),
        pytest.param(1, 1, 2**256, id="s=2**256"),
        pytest.param(2**8, 2**256, 2**256, id="v=2**8,r=s=2**256"),
    ],
)
@pytest.mark.parametrize(
    "delegate_address",
    [
        pytest.param(Spec.RESET_DELEGATION_ADDRESS, id="reset_delegation_address"),
        pytest.param(Address(1), id="non_zero_address"),
    ],
)
def test_invalid_auth_signature(
    transaction_test: TransactionTestFiller,
    pre: Alloc,
    v: int,
    r: int,
    s: int,
    delegate_address: Address,
):
    """Test sending a transaction where one of the signature elements is out of range."""
    tx = Transaction(
        gas_limit=100_000,
        to=0,
        value=0,
        authorization_list=[
            AuthorizationTuple(
                address=delegate_address,
                nonce=0,
                chain_id=1,
                v=v,
                r=r,
                s=s,
            ),
        ],
        error=[
            TransactionException.TYPE_4_INVALID_AUTHORITY_SIGNATURE,
            TransactionException.TYPE_4_INVALID_AUTHORITY_SIGNATURE_S_TOO_HIGH,
        ],
        sender=pre.fund_eoa(),
    )

    transaction_test(
        pre=pre,
        tx=tx,
    )

Parametrized Test Cases

The interactive table below is also available as a standalone page.

Test ID (Abbreviated) delegate_address v r s
...fork_Prague-transaction_test-reset_delegation_address-v=2**8 0x000000000000000000000000000000 0000000000 256 1 1
...fork_Prague-transaction_test-reset_delegation_address-r=2**256 0x000000000000000000000000000000 0000000000 1 115792089237316195423570985008687907853269984665640564039457584007913129639936 1
...fork_Prague-transaction_test-reset_delegation_address-s=2**256 0x000000000000000000000000000000 0000000000 1 1 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Prague-transaction_test-reset_delegation_address-v=2**8,r=s=2**256 0x000000000000000000000000000000 0000000000 256 115792089237316195423570985008687907853269984665640564039457584007913129639936 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Prague-transaction_test-non_zero_address-v=2**8 0x000000000000000000000000000000 0000000001 256 1 1
...fork_Prague-transaction_test-non_zero_address-r=2**256 0x000000000000000000000000000000 0000000001 1 115792089237316195423570985008687907853269984665640564039457584007913129639936 1
...fork_Prague-transaction_test-non_zero_address-s=2**256 0x000000000000000000000000000000 0000000001 1 1 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Prague-transaction_test-non_zero_address-v=2**8,r=s=2**256 0x000000000000000000000000000000 0000000001 256 115792089237316195423570985008687907853269984665640564039457584007913129639936 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Osaka-transaction_test-reset_delegation_address-v=2**8 0x000000000000000000000000000000 0000000000 256 1 1
...fork_Osaka-transaction_test-reset_delegation_address-r=2**256 0x000000000000000000000000000000 0000000000 1 115792089237316195423570985008687907853269984665640564039457584007913129639936 1
...fork_Osaka-transaction_test-reset_delegation_address-s=2**256 0x000000000000000000000000000000 0000000000 1 1 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Osaka-transaction_test-reset_delegation_address-v=2**8,r=s=2**256 0x000000000000000000000000000000 0000000000 256 115792089237316195423570985008687907853269984665640564039457584007913129639936 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Osaka-transaction_test-non_zero_address-v=2**8 0x000000000000000000000000000000 0000000001 256 1 1
...fork_Osaka-transaction_test-non_zero_address-r=2**256 0x000000000000000000000000000000 0000000001 1 115792089237316195423570985008687907853269984665640564039457584007913129639936 1
...fork_Osaka-transaction_test-non_zero_address-s=2**256 0x000000000000000000000000000000 0000000001 1 1 115792089237316195423570985008687907853269984665640564039457584007913129639936
...fork_Osaka-transaction_test-non_zero_address-v=2**8,r=s=2**256 0x000000000000000000000000000000 0000000001 256 115792089237316195423570985008687907853269984665640564039457584007913129639936 115792089237316195423570985008687907853269984665640564039457584007913129639936