Esempio n. 1
0
def test_eth_long_account_address_sign_data_with_intended_validator(
        acct, message_encodings):
    account = acct.create()

    address_in_bytes = to_bytes(hexstr=account.address)
    with pytest.raises(TypeError):
        # Raise TypeError if the address is more than 20 bytes
        defunct_hash_message(
            **message_encodings,
            signature_version=b'\x00',
            version_specific_data=to_hex(address_in_bytes + b'\x00'),
        )
Esempio n. 2
0
def test_eth_short_account_address_sign_data_with_intended_validator(
        acct, message_encodings):
    account = acct.create()

    address_in_bytes = to_bytes(hexstr=account.address)
    # Test for all lengths of addresses < 20 bytes
    for i in range(1, 21):
        with pytest.raises(TypeError):
            # Raise TypeError if the address is less than 20 bytes
            defunct_hash_message(
                **message_encodings,
                signature_version=b'\x00',
                version_specific_data=to_hex(address_in_bytes[:-i]),
            )
Esempio n. 3
0
def test_sign_message_against_sign_hash_as_text(keyed_acct, message_text):
    # sign via hash
    msg_hash = defunct_hash_message(text=message_text)
    with pytest.deprecated_call():
        signed_via_hash = keyed_acct.signHash(msg_hash)

    # sign via message
    signable_message = encode_defunct(text=message_text)
    signed_via_message = keyed_acct.sign_message(signable_message)
    assert signed_via_hash == signed_via_message
Esempio n. 4
0
def test_sign_message_against_sign_hash_as_hex(keyed_acct, message_bytes):
    message_hex = to_hex(message_bytes)

    # sign via hash
    msg_hash_hex = defunct_hash_message(hexstr=message_hex)
    with pytest.deprecated_call():
        signed_via_hash_hex = keyed_acct.signHash(msg_hash_hex)

    # sign via message
    signable_message_hex = encode_defunct(hexstr=message_hex)
    signed_via_message_hex = keyed_acct.sign_message(signable_message_hex)

    assert signed_via_hash_hex == signed_via_message_hex
Esempio n. 5
0
def test_wan_account_hash_message_hexstr(acct, message, expected):
    assert defunct_hash_message(hexstr=message) == expected
Esempio n. 6
0
def test_wan_account_hash_message_text(message, expected):
    assert defunct_hash_message(text=message) == expected