Cheatcodes reference
Fully simulate the Inco environment all from solidity tests
Execute the operations
Inco’s infrastructure is monitoring the operations requested over encrypted variables by the smart contracts.
Inco executes them asynchronously after the blocks containing the ops are mined. Under the hood, the Inco singleton instance on each
supported chain is emitting events to request the operations (that includes encrypts, trivial encrypts, all logical and mathematical operations,
and decryption requests). The solidity-based mock is using Foundry’s vm.recordLogs()
function to record the pending ops.
recordLogs
in your tests.This cheatcode must be called before reading the value of any encrypted variable, and performing assert statements.
processAllOperations
also executes any pending decryption callback.
Simulate Inputs
Encrypted inputs are normally generated using Inco’s JS SDK. Simulate them with the following cheatcodes:
For euint256
For ebool
Simulate decryption
Allowed accounts can request reading the values of e-variables using JS SDK. In the tests, you can read any value bypassing the access control checks.
For euint256
For ebool
To fully test how one of your user could see its encrypted data, we recommend combining an assertion over the decrypted value with an access control check.
Was this page helpful?