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
I am currently working on a Dapp that uses transient storage, and I want to test the composability of my smart contract. However, when I call a test function all interactions with the smart contract are batched under the same transaction. This is an issue because the transient storage does not get reset, and it makes it impossible to test bugs stemming from transient storage not being cleared at the end of a transaction.
In case I am not being clear enough here is an example:
function payBlockFee() stores true in transient storage. If the user has payed their block fee they are then allowed to interact with other functions in the protocol (via a multicall function). When testing, alice pays her block fee but bob is also allowed to interact with the other functions because transient storage has not been reset in the test function.
I am looking for a way to test the transaction being initiated from alice, then have a separate transaction that is initiated from bob without losing the state from alice's transaction.
The text was updated successfully, but these errors were encountered:
--isolate
Whether to enable isolation of calls. In isolation mode all top-level calls are executed
as a separate transaction in a separate EVM context, enabling more precise gas accounting
and transaction state changes
I am currently working on a Dapp that uses transient storage, and I want to test the composability of my smart contract. However, when I call a test function all interactions with the smart contract are batched under the same transaction. This is an issue because the transient storage does not get reset, and it makes it impossible to test bugs stemming from transient storage not being cleared at the end of a transaction.
In case I am not being clear enough here is an example:
function payBlockFee()
storestrue
in transient storage. If the user has payed their block fee they are then allowed to interact with other functions in the protocol (via a multicall function). When testing, alice pays her block fee but bob is also allowed to interact with the other functions because transient storage has not been reset in the test function.I am looking for a way to test the transaction being initiated from alice, then have a separate transaction that is initiated from bob without losing the state from alice's transaction.
The text was updated successfully, but these errors were encountered: