You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We need to make sure our MCR contract permits upgrading.
Proposed solution
Create an e2e test case testing an upgrade flow:
the current MCR contract is deployed on Anvil.
The contract is replaced with an updated contract using the built-in update process.
The effects of the updated behavior are verified.
Technical details
It's not really important in what way the updated contract is different. The simplest change would be add a statement logging a magic string that is then observed by the test, along with the confirmation that the contract works.
The "update" to the Solidity contract can in fact be a patch applied against the current code. This may prevent bit rot where the updated contract has outdated behavior.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Description
We need to make sure our MCR contract permits upgrading.
Proposed solution
Create an e2e test case testing an upgrade flow:
Technical details
It's not really important in what way the updated contract is different. The simplest change would be add a statement logging a magic string that is then observed by the test, along with the confirmation that the contract works.
The "update" to the Solidity contract can in fact be a patch applied against the current code. This may prevent bit rot where the updated contract has outdated behavior.
Beta Was this translation helpful? Give feedback.
All reactions