feat(order_utils.py): ERC20 asset data encoding and decoding
In addition to the ERC20 codec, also: Stopped ignoring type errors on 3rd party imports, by including interface stubs for them; Removed the unimplemented signature-utils module, which was just a stand-in when the python project support was first put in place. https://github.com/0xProject/0x-monorepo/pull/1144
This commit is contained in:
53
python-packages/order_utils/test/test_abi_utils.py
Normal file
53
python-packages/order_utils/test/test_abi_utils.py
Normal file
@@ -0,0 +1,53 @@
|
||||
"""Tests of 0x.abi_utils."""
|
||||
|
||||
import pytest
|
||||
|
||||
from zero_ex.dev_utils.abi_utils import (
|
||||
elementary_name,
|
||||
event_id,
|
||||
method_id,
|
||||
parse_signature,
|
||||
simple_encode,
|
||||
)
|
||||
|
||||
|
||||
def test_parse_signature_type_error():
|
||||
"""Test that passing in wrong types raises TypeError."""
|
||||
with pytest.raises(TypeError):
|
||||
parse_signature(123)
|
||||
|
||||
|
||||
def test_parse_signature_bad_input():
|
||||
"""Test that passing a non-signature string raises a ValueError."""
|
||||
with pytest.raises(ValueError):
|
||||
parse_signature("a string that's not even close to a signature")
|
||||
|
||||
|
||||
def test_elementary_name_type_error():
|
||||
"""Test that passing in wrong types raises TypeError."""
|
||||
with pytest.raises(TypeError):
|
||||
elementary_name(123)
|
||||
|
||||
|
||||
def test_event_id_type_error():
|
||||
"""Test that passing in wrong types raises TypeError."""
|
||||
with pytest.raises(TypeError):
|
||||
event_id(123, [])
|
||||
|
||||
with pytest.raises(TypeError):
|
||||
event_id("valid string", 123)
|
||||
|
||||
|
||||
def test_method_id_type_error():
|
||||
"""Test that passing in wrong types raises TypeError."""
|
||||
with pytest.raises(TypeError):
|
||||
method_id(123, [])
|
||||
|
||||
with pytest.raises(TypeError):
|
||||
method_id("ERC20Token", 123)
|
||||
|
||||
|
||||
def test_simple_encode_type_error():
|
||||
"""Test that passing in wrong types raises TypeError."""
|
||||
with pytest.raises(TypeError):
|
||||
simple_encode(123)
|
Reference in New Issue
Block a user