OasisEth ParaTime Testing Plan - second-state/oasis-ssvm-runtime GitHub Wiki
OasisEth ParaTime Testing Plan
Current Parameters
- We will have two entities: EntityA (Base), EntityB (Follower)
- Each entity will have only one ParaTime node.
Workflow
- Initialize:
- EntityA registers runtime:
- Specify new runtime id
RUNTIME_ID
- EntityA registers
RUNTIME_ID
and set the group size to 1
- Deploy the first ParaTime node and an RPC endpoint node:
- EntityA starts a new ParaTime node
ParaTimeA
- Wait for the
ParaTimeA
syncing up with the oasis network
- Wait for the
ParaTimeA
joining the ParaTime committee
- EntityA starts a client node for enabling an RPC endpoint server
- Start testing:
- Use a cronjob to send the following transactions to the RPC endpoint server
- Transfer OETH from
AddressA
to AddressB
- Deploy an EVM version of ERC20 contract from
AddressA
and call the transfer
function to send ERC20 to AddressB
- Deploy an EWasm version of ERC20 contract from
AddressA
and call the transfer
function to send ERC20 to AddressB
- This testing process will not stop. And all of the testing transactions should not fail at any moment.
- Add more ParaTime nodes:
- Deploy the second ParaTime node from EntityB
- EntityB starts a new ParaTime node
ParaTimeB
- EntityA signs a transaction to add
EntityB
into the ParaTime allowlist.
- Wait for the
ParaTimeB
syncing up with the oasis network
- Wait for the
ParaTimeB
joining the ParaTime committee
- If the
ParaTimeB
works with no issues, the testing transactions which are made in Step2
should not fail at any moment.
- Before we increase the committee group size, the new ParaTime nodes should join the committee with no issues at least 6 epoch times.
- Deploy the third ParaTime node from EntityC
- EntityC starts a new ParaTime node
ParaTimeC
- EntityA signs a transaction to add
EntityC
into the ParaTime allowlist.
- Wait for the
ParaTimeC
syncing up with the oasis network
- Wait for the
ParaTimeC
joining the ParaTime committee
- If the
ParaTimeC
works with no issues, the testing transactions which are made in Step2
should not fail at any moment.
- Before we increase the committee group size, the new ParaTime nodes should join the committee with no issues at least 6 epoch times.
- Deploy the fourth ParaTime node from EntityA
- EntityA starts a new ParaTime node
ParaTimeD
- Wait for the
ParaTimeD
syncing up with the oasis network
- Wait for the
ParaTimeD
joining the ParaTime committee
- If the
ParaTimeD
works with no issues, the testing transactions which are made in Step2
should not fail at any moment.
- Before we increase the committee group size, the new ParaTime nodes should join the committee with no issues at least 6 epoch times.