2021-02-01 18:12:51 +01:00
|
|
|
# standard imports
|
|
|
|
import os
|
|
|
|
import logging
|
|
|
|
import time
|
|
|
|
|
2021-03-29 15:27:53 +02:00
|
|
|
# external imports
|
2021-02-01 18:12:51 +01:00
|
|
|
import pytest
|
|
|
|
import celery
|
2021-03-29 15:27:53 +02:00
|
|
|
from cic_eth_registry.erc20 import ERC20Token
|
|
|
|
from chainlib.chain import ChainSpec
|
2021-02-01 18:12:51 +01:00
|
|
|
|
2021-03-29 15:27:53 +02:00
|
|
|
# local imports
|
2021-02-01 18:12:51 +01:00
|
|
|
from cic_eth.api import Api
|
|
|
|
|
|
|
|
logg = logging.getLogger(__name__)
|
|
|
|
|
2021-03-29 15:27:53 +02:00
|
|
|
|
2021-02-01 18:12:51 +01:00
|
|
|
def test_account_api(
|
|
|
|
default_chain_spec,
|
|
|
|
init_database,
|
2021-03-29 15:27:53 +02:00
|
|
|
init_eth_rpc,
|
|
|
|
account_registry,
|
|
|
|
custodial_roles,
|
2021-02-01 18:12:51 +01:00
|
|
|
celery_session_worker,
|
|
|
|
):
|
|
|
|
api = Api(str(default_chain_spec), callback_param='accounts', callback_task='cic_eth.callbacks.noop.noop', queue=None)
|
|
|
|
t = api.create_account('', register=False)
|
2021-03-29 15:27:53 +02:00
|
|
|
t.get_leaf()
|
2021-02-01 18:12:51 +01:00
|
|
|
assert t.successful()
|
|
|
|
|
|
|
|
|
|
|
|
def test_transfer_api(
|
|
|
|
default_chain_spec,
|
2021-03-29 15:27:53 +02:00
|
|
|
eth_rpc,
|
2021-02-01 18:12:51 +01:00
|
|
|
init_database,
|
2021-03-29 15:27:53 +02:00
|
|
|
foo_token,
|
|
|
|
custodial_roles,
|
|
|
|
agent_roles,
|
|
|
|
cic_registry,
|
|
|
|
register_tokens,
|
2021-02-01 18:12:51 +01:00
|
|
|
celery_session_worker,
|
|
|
|
):
|
|
|
|
|
2021-03-29 15:27:53 +02:00
|
|
|
#token = CICRegistry.get_address(default_chain_spec, bancor_tokens[0])
|
|
|
|
foo_token_cache = ERC20Token(eth_rpc, foo_token)
|
2021-02-01 18:12:51 +01:00
|
|
|
|
|
|
|
api = Api(str(default_chain_spec), callback_param='transfer', callback_task='cic_eth.callbacks.noop.noop', queue=None)
|
2021-03-29 15:27:53 +02:00
|
|
|
t = api.transfer(custodial_roles['FOO_TOKEN_GIFTER'], agent_roles['ALICE'], 1024, foo_token_cache.symbol)
|
|
|
|
t.get_leaf()
|
2021-02-01 18:12:51 +01:00
|
|
|
assert t.successful()
|
|
|
|
|
|
|
|
|
2021-03-06 18:55:51 +01:00
|
|
|
@pytest.mark.skip()
|
2021-02-01 18:12:51 +01:00
|
|
|
def test_convert_api(
|
|
|
|
default_chain_spec,
|
|
|
|
init_w3,
|
|
|
|
cic_registry,
|
|
|
|
init_database,
|
2021-03-29 15:27:53 +02:00
|
|
|
foo_token,
|
|
|
|
bar_token,
|
2021-02-01 18:12:51 +01:00
|
|
|
celery_session_worker,
|
|
|
|
):
|
|
|
|
|
|
|
|
token_alice = CICRegistry.get_address(default_chain_spec, bancor_tokens[0])
|
|
|
|
token_bob = CICRegistry.get_address(default_chain_spec, bancor_tokens[1])
|
|
|
|
|
|
|
|
api = Api(str(default_chain_spec), callback_param='convert', callback_task='cic_eth.callbacks.noop.noop', queue=None)
|
2021-03-29 15:27:53 +02:00
|
|
|
t = api.convert(custodial_roles['FOO_TOKEN_GIFTER'], 110, 100, foo_token_cache.symbol, bar_token_cache.symbol)
|
|
|
|
t.get_leaf()
|
2021-02-01 18:12:51 +01:00
|
|
|
assert t.successful()
|
|
|
|
|
|
|
|
|
2021-03-06 18:55:51 +01:00
|
|
|
@pytest.mark.skip()
|
2021-02-01 18:12:51 +01:00
|
|
|
def test_convert_transfer_api(
|
|
|
|
default_chain_spec,
|
|
|
|
init_w3,
|
|
|
|
cic_registry,
|
|
|
|
init_database,
|
|
|
|
bancor_registry,
|
|
|
|
bancor_tokens,
|
|
|
|
celery_session_worker,
|
|
|
|
):
|
|
|
|
|
|
|
|
token_alice = CICRegistry.get_address(default_chain_spec, bancor_tokens[0])
|
|
|
|
token_bob = CICRegistry.get_address(default_chain_spec, bancor_tokens[1])
|
|
|
|
|
|
|
|
api = Api(str(default_chain_spec), callback_param='convert_transfer', callback_task='cic_eth.callbacks.noop.noop', queue=None)
|
|
|
|
t = api.convert_transfer(init_w3.eth.accounts[2], init_w3.eth.accounts[4], 110, 100, token_alice.symbol(), token_bob.symbol())
|
|
|
|
t.get()
|
|
|
|
for r in t.collect():
|
|
|
|
print(r)
|
|
|
|
assert t.successful()
|
|
|
|
|
|
|
|
|
|
|
|
def test_refill_gas(
|
|
|
|
default_chain_spec,
|
|
|
|
init_database,
|
|
|
|
eth_empty_accounts,
|
2021-03-29 15:27:53 +02:00
|
|
|
init_eth_rpc,
|
|
|
|
custodial_roles,
|
|
|
|
celery_session_worker,
|
2021-02-01 18:12:51 +01:00
|
|
|
):
|
|
|
|
|
2021-03-29 15:27:53 +02:00
|
|
|
api = Api(str(default_chain_spec), callback_param='refill_gas', callback_task='cic_eth.callbacks.noop.noop', queue=None)
|
2021-02-01 18:12:51 +01:00
|
|
|
t = api.refill_gas(eth_empty_accounts[0])
|
|
|
|
t.get()
|
|
|
|
for r in t.collect():
|
|
|
|
print(r)
|
|
|
|
assert t.successful()
|
|
|
|
|
|
|
|
|
|
|
|
def test_ping(
|
|
|
|
default_chain_spec,
|
|
|
|
celery_session_worker,
|
|
|
|
):
|
|
|
|
api = Api(str(default_chain_spec), callback_param='ping', callback_task='cic_eth.callbacks.noop.noop', queue=None)
|
|
|
|
t = api.ping('pong')
|
|
|
|
t.get()
|
|
|
|
for r in t.collect():
|
|
|
|
print(r)
|
|
|
|
assert t.successful()
|