-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add evm tests for ctx state after chain upgrade #277
Conversation
ts-tests/tests/config.ts
Outdated
@@ -16,3 +16,7 @@ export const BLOCK_TIMESTAMP = 6; // 6 seconds per block | |||
export const BLOCK_HASH_COUNT = 256; | |||
export const EXISTENTIAL_DEPOSIT = 10_000_000_000_000_000; // The minimum amount required to keep an account open | |||
export const BLOCK_GAS_LIMIT = 60000000; | |||
|
|||
export const SNOW_RPC_ENDPOINT = "https://snow-rpc.icenetwork.io:9933"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
may be this should be configurable so that we can run these tests against other snow urls?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The RPC url, chain id and contract address can be moved to the .env file, to make these configurable.
These values however, are not used on the github actions since they need to be run manually with npm test-ctx-state
on every mainnet network upgrade.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's add two networks Arctic and Snow.
And possibility to run test on different networks
For example:
npm run test-ctx-state arctic
npm run test-ctx-state snow
or
npm run test-ctx-state --chain arctic
npm run test-ctx-state --chain snow
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think there would also be requirement to add command for local net, then staging too.
So how about setting the npm command as just
npm run test-ctx-state
and based on the node ws endpoint, chainID and contract address set on the env file, it will make checks on the respective env?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Source text
I think we will move these tests in to another Git Action task.(e2e tests) Because In my opinion It doesn't make any sense to run them in current flow. Because we should run this tests only after network upgrade and not for every commit.
In this case we need to configure network in the process of running.
What do you think?
|
||
describe("Tests for checking existing contracts storage", () => { | ||
step("Ensure the contract state is intact", async function (done) { | ||
this.timeout(10_000); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we use sleep here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is to ensure that if this particular test takes more than 10sec to execute, it will timeout and fail
Make sure the contract data structure has not changed since the network upgrade.