Make tests pass
This commit is contained in:
@@ -109,5 +109,6 @@ class TestCICEthTokenBase(TestCICEthBase):
|
||||
self.token_name = 'FOotoken'
|
||||
self.token_symbol = 'FOO'
|
||||
self.token_precision = 8
|
||||
self.token_supply = 1073741824
|
||||
|
||||
self.core_processor = Processor(outputs_writer=self.outputs_writer, extensions=[self.adapter])
|
||||
|
||||
@@ -34,6 +34,7 @@ from tests.eth.base_eth import TestCICEthTokenBase
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logg = logging.getLogger()
|
||||
logg.setLevel(level=logging.DEBUG)
|
||||
|
||||
|
||||
class TestCICEthRPC(TestCICEthTokenBase):
|
||||
@@ -43,7 +44,7 @@ class TestCICEthRPC(TestCICEthTokenBase):
|
||||
nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
|
||||
gas_oracle = RPCGasOracle(self.rpc)
|
||||
|
||||
self.adapter = CICEth(self.chain_spec, self.resources, self.proofs, signer=self.signer, rpc=self.rpc, fee_oracle=gas_oracle)
|
||||
self.adapter = CICEth(self.chain_spec, self.resources, self.proofs, signer=self.signer, rpc=self.rpc, fee_oracle=gas_oracle, outputs_writer=self.outputs_writer)
|
||||
self.core_processor = Processor(outputs_writer=self.outputs_writer, extensions=[self.adapter])
|
||||
|
||||
|
||||
@@ -74,7 +75,7 @@ class TestCICEthRPC(TestCICEthTokenBase):
|
||||
|
||||
def test_rpc_process_withtoken(self):
|
||||
self.adapter.fee_oracle = OverrideGasOracle(limit=GiftableToken.gas(), conn=self.rpc)
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode())
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode(), self.token_supply)
|
||||
self.adapter.process()
|
||||
|
||||
results = self.adapter.get_outputs()
|
||||
@@ -96,7 +97,7 @@ class TestCICEthRPC(TestCICEthTokenBase):
|
||||
|
||||
def test_rpc_process_top(self):
|
||||
self.adapter.fee_oracle = OverrideGasOracle(limit=GiftableToken.gas(), conn=self.rpc)
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode())
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode(), self.token_supply)
|
||||
self.core_processor.process()
|
||||
|
||||
results = self.adapter.get_outputs()
|
||||
|
||||
@@ -19,13 +19,17 @@ class TestCICEthOffline(TestCICEthBase):
|
||||
def setUp(self):
|
||||
super(TestCICEthOffline, self).setUp()
|
||||
self.adapter = CICEth(self.chain_spec, self.resources, self.proofs)
|
||||
self.first_proof = self.proofs.get()[0]
|
||||
proofs = []
|
||||
for proof in self.proofs.get():
|
||||
proofs.append(proof[0])
|
||||
proofs.sort()
|
||||
self.first_proof = proofs[0]
|
||||
#self.core_processor = Processor(outputs_writer=self.outputs_writer, extensions=[self.adapter])
|
||||
|
||||
|
||||
def test_offline_token_index(self):
|
||||
self.adapter.token_address = self.token_address
|
||||
self.adapter.process_token_index()
|
||||
self.adapter.process_token_index(writer=self.outputs_writer)
|
||||
self.assertEqual(self.adapter.outputs[0][0], 'token_index')
|
||||
self.assertEqual(self.adapter.outputs[0][1][:8], '4420e486')
|
||||
|
||||
@@ -43,6 +47,8 @@ class TestCICEthOffline(TestCICEthBase):
|
||||
self.adapter.outputs_writer = self.outputs_writer
|
||||
self.adapter.token_address = self.token_address
|
||||
self.adapter.process_address_declarator()
|
||||
logg.debug('proocs {}'.format(self.proofs))
|
||||
logg.debug('outputs {}'.format(self.adapter.outputs))
|
||||
self.assertEqual(self.adapter.outputs[0][0], 'address_declarator_' + self.first_proof)
|
||||
self.assertEqual(self.adapter.outputs[0][1][:8], 'ae47ece0')
|
||||
self.assertEqual(len(self.adapter.outputs), 3)
|
||||
|
||||
@@ -30,7 +30,7 @@ class TestCICEthSign(TestCICEthBase):
|
||||
|
||||
def test_sign_token_index(self):
|
||||
self.adapter.token_address = self.token_address
|
||||
v = self.adapter.process_token_index()
|
||||
v = self.adapter.process_token_index(writer=self.outputs_writer)
|
||||
tx_raw = bytes.fromhex(strip_0x(self.adapter.outputs[0][1]))
|
||||
tx = unpack(tx_raw, self.chain_spec)
|
||||
self.assertEqual(strip_0x(tx['data'])[:8], '4420e486')
|
||||
|
||||
@@ -7,6 +7,7 @@ import logging
|
||||
from chainlib.eth.tx import (
|
||||
TxFormat,
|
||||
receipt,
|
||||
Tx,
|
||||
)
|
||||
from chainlib.eth.contract import (
|
||||
abi_decode_single,
|
||||
@@ -27,28 +28,31 @@ from tests.base_cic import test_data_dir
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logg = logging.getLogger()
|
||||
logg.setLevel(logging.DEBUG)
|
||||
|
||||
|
||||
class TestCICEthToken(TestCICEthTokenBase):
|
||||
|
||||
def test_token_nobackend(self):
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode())
|
||||
v = self.adapter.process_token()
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode(), 0)
|
||||
self.adapter.token_address = self.token_address
|
||||
v = self.adapter.process_token(writer=self.outputs_writer)
|
||||
|
||||
|
||||
def test_token_sign(self):
|
||||
self.adapter.token_address = self.token_address
|
||||
self.adapter.signer = self.signer
|
||||
self.adapter.tx_format = TxFormat.RLP_SIGNED
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode())
|
||||
v = self.adapter.process_token()
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode(), self.token_supply)
|
||||
v = self.adapter.process_token(writer=self.outputs_writer)
|
||||
|
||||
|
||||
def test_token_rpc(self):
|
||||
self.adapter.signer = self.signer
|
||||
self.adapter.rpc = self.rpc
|
||||
self.adapter.tx_format = TxFormat.JSONRPC
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode())
|
||||
v = self.adapter.process_token()
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, GiftableToken.bytecode(), self.token_supply)
|
||||
v = self.adapter.process_token(writer=self.outputs_writer)
|
||||
o = receipt(v)
|
||||
r = self.rpc.do(o)
|
||||
self.assertEqual(r['status'], 1)
|
||||
@@ -60,10 +64,11 @@ class TestCICEthToken(TestCICEthTokenBase):
|
||||
weird_bytecode = f.read()
|
||||
f.close()
|
||||
try:
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, weird_bytecode, extra=['0xdeadbeef'], extra_types=['bytes32'])
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, weird_bytecode, self.token_supply, extra=['0xdeadbeef'], extra_types=['bytes32'])
|
||||
except ValueError:
|
||||
v = self.adapter.process_token()
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, weird_bytecode, extra=['0xdeadbeef'], extra_types=['bytes32'], positions=[1, 2, 3, 0])
|
||||
v = self.adapter.process_token(writer=self.outputs_writer)
|
||||
self.adapter.prepare_token(self.token_name, self.token_symbol, self.token_precision, weird_bytecode, self.token_supply, extra=['0xdeadbeef'], extra_types=['bytes32'], positions=[1, 2, 3, 0])
|
||||
self.adapter.load_code()
|
||||
self.adapter.signer = self.signer
|
||||
self.adapter.rpc = self.rpc
|
||||
self.adapter.tx_format = TxFormat.JSONRPC
|
||||
@@ -72,10 +77,11 @@ class TestCICEthToken(TestCICEthTokenBase):
|
||||
o = receipt(v)
|
||||
r = self.rpc.do(o)
|
||||
self.assertEqual(r['status'], 1)
|
||||
Tx.src_normalize(r)
|
||||
contract_address = r['contract_address']
|
||||
logg.debug('contract address {}'.format(contract_address))
|
||||
|
||||
c = ERC20(self.chain_spec)
|
||||
|
||||
o = c.name(contract_address, sender_address=self.accounts[0])
|
||||
r = self.rpc.do(o)
|
||||
self.assertEqual(c.parse_name(r), self.token_name)
|
||||
|
||||
Reference in New Issue
Block a user