commit bf2e204eeadecfe78f1f34ab22b4b61fcc5125ae
parent c3c948e9e305b005d0c84806ae17674d1ab1c45b
Author: nolash <dev@holbrook.no>
Date: Mon, 4 Oct 2021 16:42:09 +0200
Factor out eth-token-index
Diffstat:
3 files changed, 1 insertion(+), 169 deletions(-)
diff --git a/python/setup.cfg b/python/setup.cfg
@@ -26,9 +26,7 @@ python_requires = >= 3.6
packages =
eth_address_declarator
eth_address_declarator.runnable
- eth_token_index
- eth_token_index.runnable
- eth_token_index.unittest
+ eth_address_declarator.unittest
[options.extras_require]
testing =
@@ -39,16 +37,9 @@ testing =
* =
data/AddressDeclarator.json
data/AddressDeclarator.bin
- data/GiftableToken.bin
- data/GifttableToken.json
- data/TokenUniqueSymbolIndex.bin
- data/TokenUniqueSymbolIndex.json
data/ERC20.json
[options.entry_points]
console_scripts =
eth-address-declarator-deploy = eth_address_declarator.runnable.deploy:main
eth-address-declarator-add = eth_address_declarator.runnable.add:main
- eth-token-index-deploy = eth_token_index.runnable.deploy:main
- eth-token-index-add = eth_token_index.runnable.add:main
- eth-token-index-list = eth_token_index.runnable.list:main
diff --git a/python/tests/test_accounts_index.py b/python/tests/test_accounts_index.py
@@ -1,72 +0,0 @@
-# standard imports
-import unittest
-import logging
-import hashlib
-
-# external imports
-from eth_accounts_index import AccountsIndex
-from chainlib.eth.nonce import RPCNonceOracle
-from giftable_erc20_token import GiftableToken
-from chainlib.eth.tx import receipt
-from chainlib.eth.contract import ABIContractEncoder
-
-# local imports
-from eth_address_declarator.accounts_index import AccountsIndexAddressDeclarator
-from eth_address_declarator import Declarator
-
-# test imports
-from tests.test_addressdeclarator_base import TestBase
-
-logging.basicConfig(level=logging.DEBUG)
-logg = logging.getLogger()
-
-
-class TestAccountsIndex(TestBase):
-
- def setUp(self):
- super(TestAccountsIndex, self).setUp()
- nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
-
- c = AccountsIndexAddressDeclarator(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
- (tx_hash_hex, o) = c.constructor(self.accounts[0], self.foo_token_address, self.address)
- r = self.rpc.do(o)
-
- o = receipt(tx_hash_hex)
- r = self.rpc.do(o)
- self.assertEqual(r['status'], 1)
-
- self.accounts_index_address = r['contract_address']
- logg.debug('accounts index deployed with address {}'.format(self.accounts_index_address))
-
-
- def test_accounts_index_address_declarator(self):
- nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
- c = AccountsIndex(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
- (tx_hash, o) = c.add(self.accounts_index_address, self.accounts[0], self.accounts[1])
- r = self.rpc.do(o)
- self.assertEqual(tx_hash, r)
-
- o = receipt(tx_hash)
- rcpt = self.rpc.do(o)
-
- self.helper.mine_block()
- o = c.have(self.accounts_index_address, self.accounts[1], sender_address=self.accounts[0])
- r = self.rpc.do(o)
-
- c = Declarator(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
- o = c.declaration(self.address, self.accounts[0], self.accounts[1], sender_address=self.accounts[0])
- r = self.rpc.do(o)
- proofs = c.parse_declaration(r)
-
- enc = ABIContractEncoder()
- enc.address(self.foo_token_address)
- token_address_padded = enc.get()
- logg.debug('proof {} {}'.format(proofs, token_address_padded))
- h = hashlib.sha256()
- h.update(bytes.fromhex(token_address_padded))
- r = h.digest()
- self.assertEqual(r.hex(), proofs[0])
-
-
-if __name__ == '__main__':
- unittest.main()
diff --git a/python/tests/test_tokenindex.py b/python/tests/test_tokenindex.py
@@ -1,87 +0,0 @@
-# standard imports
-import os
-import unittest
-import json
-import logging
-import hashlib
-
-# external imports
-from chainlib.eth.unittest.ethtester import EthTesterCase
-from chainlib.eth.nonce import RPCNonceOracle
-from chainlib.eth.tx import receipt
-from giftable_erc20_token import GiftableToken
-from chainlib.eth.tx import unpack
-from hexathon import strip_0x
-from chainlib.eth.contract import ABIContractEncoder
-
-# local imports
-from eth_address_declarator.token_index.index import (
- TokenUniqueSymbolIndexAddressDeclarator as TokenIndex,
- to_identifier,
- )
-from eth_address_declarator import Declarator
-
-# test imports
-from tests.test_addressdeclarator_base import TestBase
-
-logging.basicConfig(level=logging.DEBUG)
-logg = logging.getLogger()
-
-testdir = os.path.dirname(__file__)
-
-
-class TestTokenIndex(TestBase):
-
- def setUp(self):
- super(TestTokenIndex, self).setUp()
- nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
- c = TokenIndex(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
- (tx_hash_hex, o) = c.constructor(self.accounts[0], self.address)
- self.rpc.do(o)
-
- o = receipt(tx_hash_hex)
- r = self.rpc.do(o)
- self.assertEqual(r['status'], 1)
-
- self.token_index_address = r['contract_address']
-
-
- def test_register(self):
- nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
- c = TokenIndex(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
-
- (tx_hash_hex, o) = c.register(self.token_index_address, self.accounts[0], self.foo_token_address)
- self.rpc.do(o)
- e = unpack(bytes.fromhex(strip_0x(o['params'][0])), self.chain_spec)
-
- o = receipt(tx_hash_hex)
- r = self.rpc.do(o)
- self.assertEqual(r['status'], 1)
-
- o = c.address_of(self.token_index_address, 'FOO', sender_address=self.accounts[0])
- r = self.rpc.do(o)
- address = c.parse_address_of(r)
- self.assertEqual(address, self.foo_token_address)
-
- o = c.entry(self.token_index_address, 0, sender_address=self.accounts[0])
- r = self.rpc.do(o)
- address = c.parse_entry(r)
- self.assertEqual(address, self.foo_token_address)
-
- o = c.entry_count(self.token_index_address, sender_address=self.accounts[0])
- r = self.rpc.do(o)
- count = c.parse_entry_count(r)
- self.assertEqual(count, 1)
-
- c = Declarator(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
- o = c.declaration(self.address, self.accounts[0], self.foo_token_address, sender_address=self.accounts[0])
- r = self.rpc.do(o)
- proofs = c.parse_declaration(r)
-
- token_symbol_identifier = to_identifier('FOO')
-
- self.assertEqual(token_symbol_identifier, proofs[0])
-
-
-if __name__ == '__main__':
- unittest.main()