cmdtest ethdev: use single dev address for all daemons
This commit is contained in:
parent
e9e4b8f3cb
commit
21fb6a8195
18 changed files with 26 additions and 14 deletions
|
|
@ -17,7 +17,6 @@ include test/*/*/*.py
|
|||
include test/ref/*
|
||||
include test/ref/*/*
|
||||
include test/ref/*/*/*/*
|
||||
include test/ref/*/*/*/*/*
|
||||
include test/overlay/fakemods/mmgen/*.py
|
||||
include test/overlay/fakemods/mmgen/*/*.py
|
||||
include test/overlay/fakemods/mmgen/*/*/*/*.py
|
||||
|
|
|
|||
|
|
@ -81,6 +81,9 @@ def get_reth_dev_keypair(cfg):
|
|||
node = m.to_chain(idx=0, coin='eth').derive_private(0)
|
||||
return (node.key.hex(), node.address)
|
||||
|
||||
reth_dev_amt = 1_000_000
|
||||
reth_devkey_fn = 'reth.devkey'
|
||||
|
||||
burn_addr = 'deadbeef'*5
|
||||
burn_addr2 = 'beadcafe'*5
|
||||
|
||||
|
|
@ -446,7 +449,9 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
('addrgen', 'generating addresses'),
|
||||
('addrimport', 'importing addresses'),
|
||||
('addrimport_devaddr', 'importing the dev address'),
|
||||
('addrimport_reth_devaddr', 'importing the reth dev address'),
|
||||
('fund_devaddr', 'funding the dev address'),
|
||||
('del_reth_devaddr', 'deleting the reth dev address'),
|
||||
('cli_dev_balance', 'mmgen-cli eth_getBalance'),
|
||||
),
|
||||
'msg': (
|
||||
|
|
@ -673,8 +678,9 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
self.daemon = CoinDaemon(cfg, network_id=self.proto.coin+'_rt', test_suite=True)
|
||||
|
||||
if self.daemon.id == 'reth':
|
||||
global dfl_devkey, dfl_devaddr
|
||||
dfl_devkey, dfl_devaddr = get_reth_dev_keypair(cfg)
|
||||
global reth_devkey, reth_devaddr
|
||||
reth_devkey, reth_devaddr = get_reth_dev_keypair(cfg)
|
||||
write_to_file(joinpath(self.tmpdir, reth_devkey_fn), reth_devkey+'\n')
|
||||
|
||||
set_vbals(self.daemon.id)
|
||||
|
||||
|
|
@ -709,8 +715,7 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
d = self.daemon
|
||||
|
||||
if not self.using_solc:
|
||||
subdir = 'reth' if d.id == 'reth' else 'geth'
|
||||
srcdir = os.path.join(self.tr.repo_root, 'test', 'ref', 'ethereum', 'bin', subdir)
|
||||
srcdir = os.path.join(self.tr.repo_root, 'test', 'ref', 'ethereum', 'bin')
|
||||
from shutil import copytree
|
||||
for _ in ('mm1', 'mm2'):
|
||||
copytree(os.path.join(srcdir, _), os.path.join(self.tmpdir, _))
|
||||
|
|
@ -846,13 +851,14 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
return t
|
||||
|
||||
def cli_dev_balance(self):
|
||||
self.mining_delay()
|
||||
t = self.spawn(
|
||||
'mmgen-cli',
|
||||
[f'--coin={self.proto.coin}', '--regtest=1', 'eth_getBalance', '0x'+dfl_devaddr, 'latest'])
|
||||
if self.daemon.id == 'geth':
|
||||
t.expect('0x33b2e3c91ec0e9113986000')
|
||||
elif self.daemon.id == 'reth':
|
||||
t.expect('0xd3c21bcecceda1000000')
|
||||
t.expect('0xd3c21bab45fb313f0000')
|
||||
return t
|
||||
|
||||
async def _wallet_upgrade(self, src_fn, expect1, expect2=None):
|
||||
|
|
@ -907,6 +913,11 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
def addrimport_devaddr(self):
|
||||
return self._addrimport_one_addr(addr=dfl_devaddr)
|
||||
|
||||
def addrimport_reth_devaddr(self):
|
||||
if not self.daemon.id == 'reth':
|
||||
return 'silent'
|
||||
return self._addrimport_one_addr(addr=reth_devaddr)
|
||||
|
||||
def addrimport_burn_addr(self):
|
||||
return self._addrimport_one_addr(addr=burn_addr)
|
||||
|
||||
|
|
@ -991,10 +1002,13 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
|
||||
def fund_devaddr(self):
|
||||
"""
|
||||
For Erigon, fund the default (Parity) dev address from the Erigon dev address
|
||||
For Reth, fund the default (Parity) dev address from the Reth dev address
|
||||
For the others, send a junk TX to keep block counts equal for all daemons
|
||||
"""
|
||||
dt = namedtuple('data', ['devkey_fn', 'dest', 'amt'])
|
||||
if self.daemon.id == 'reth':
|
||||
d = dt(reth_devkey_fn, dfl_devaddr, Decimal(reth_dev_amt) - Decimal('0.01'))
|
||||
else:
|
||||
d = dt(dfl_devkey_fn, burn_addr2, '1')
|
||||
t = self.txcreate(
|
||||
args = self.eth_opts_noquiet + [
|
||||
|
|
@ -1010,6 +1024,11 @@ class CmdTestEthdev(CmdTestBase, CmdTestShared, CmdTestEthdevMethods):
|
|||
self.get_file_with_ext('sigtx', delete_all=True)
|
||||
return t
|
||||
|
||||
def del_reth_devaddr(self):
|
||||
if not self.daemon.id == 'reth':
|
||||
return 'silent'
|
||||
return self._del_addr(reth_devaddr)
|
||||
|
||||
def txcreate1(self):
|
||||
# include one invalid keypress 'X' -- see EthereumTwUnspentOutputs.key_mappings
|
||||
menu = ['a', 'd', 'r', 'M', 'X', 'e', 'm', 'm']
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
6080604052348015600f57600080fd5b50600080546001600160a01b031916331790556101ca806100316000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806379ba5097146100515780638da5cb5b1461005b578063d4ee1d901461008a578063f2fde38b1461009d575b600080fd5b6100596100b0565b005b60005461006e906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b60015461006e906001600160a01b031681565b6100596100ab366004610164565b61012b565b6001546001600160a01b031633146100c757600080fd5b600154600080546040516001600160a01b0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b0316331461014257600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121561017657600080fd5b81356001600160a01b038116811461018d57600080fd5b939250505056fea2646970667358221220bcd3e32a06d3bc97ce1339e72449373355373643c31c80385ca5f89938aca39c64736f6c634300081a0033
|
||||
|
|
@ -1 +0,0 @@
|
|||
6080604052348015600f57600080fd5b506102018061001f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063a293d1e814610051578063b5931f7c14610076578063d05c78da14610089578063e6cb90131461009c575b600080fd5b61006461005f366004610134565b6100af565b60405190815260200160405180910390f35b610064610084366004610134565b6100cf565b610064610097366004610134565b6100e7565b6100646100aa366004610134565b610119565b6000828211156100be57600080fd5b6100c8828461016c565b9392505050565b60008082116100dd57600080fd5b6100c8828461017f565b60006100f382846101a1565b905082158061010a575081610108848361017f565b145b61011357600080fd5b92915050565b600061012582846101b8565b90508281101561011357600080fd5b6000806040838503121561014757600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011357610113610156565b60008261019c57634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761011357610113610156565b808201808211156101135761011361015656fea264697066735822122081e009254874ff32aa4fa09f9d8a315bf6a4e9e870bfb5d8b4e6611f659ed84964736f6c634300081a0033
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1 +0,0 @@
|
|||
6080604052348015600f57600080fd5b50600080546001600160a01b031916331790556101ca806100316000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806379ba5097146100515780638da5cb5b1461005b578063d4ee1d901461008a578063f2fde38b1461009d575b600080fd5b6100596100b0565b005b60005461006e906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b60015461006e906001600160a01b031681565b6100596100ab366004610164565b61012b565b6001546001600160a01b031633146100c757600080fd5b600154600080546040516001600160a01b0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b0316331461014257600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121561017657600080fd5b81356001600160a01b038116811461018d57600080fd5b939250505056fea2646970667358221220099e0ef07629964c2926acd072d60ab552ff4e436a34052b97f44c2afb36e84664736f6c634300081a0033
|
||||
|
|
@ -1 +0,0 @@
|
|||
6080604052348015600f57600080fd5b506102018061001f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063a293d1e814610051578063b5931f7c14610076578063d05c78da14610089578063e6cb90131461009c575b600080fd5b61006461005f366004610134565b6100af565b60405190815260200160405180910390f35b610064610084366004610134565b6100cf565b610064610097366004610134565b6100e7565b6100646100aa366004610134565b610119565b6000828211156100be57600080fd5b6100c8828461016c565b9392505050565b60008082116100dd57600080fd5b6100c8828461017f565b60006100f382846101a1565b905082158061010a575081610108848361017f565b145b61011357600080fd5b92915050565b600061012582846101b8565b90508281101561011357600080fd5b6000806040838503121561014757600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011357610113610156565b60008261019c57634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761011357610113610156565b808201808211156101135761011361015656fea264697066735822122045f0003b01e5d932310b9838629204723acd115b8e8d8a25145a9d08e21cce6164736f6c634300081a0033
|
||||
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue