properties
properties copied to clipboard
Pre-built security properties for common Ethereum operations
Helper `User.sol` contract for external testing, based on https://github.com/crytic/echidna-streaming-series
Added a test to the ERC20 internal and external "basic" tests for ensuring that transferFrom doesn't transfer more than the allowance value. Also, updated the PROPERTIES readme with the new...
### Describe the desired feature or improvement This is a bit subjective, but I find it confusing: ```solidity import {PropertiesAsserts} from "@crytic/properties/contracts/util/PropertiesHelper.sol"; ``` I propose a refactor so that the...
### Describe the desired feature or improvement When integrating https://github.com/crytic/properties with an existing foundry codebase, many assertion helpers collide with `forge-std/Test.sol`, which makes it harder to use both helpers on...
For example, we can use a low level call, or try/catch, and verify that it actually reverts
We need to standardize the properties in this repo, for example: - properties must be described with natspec - the english description of the invariant must be present - The...
Used the ABDKMath properties as a base to create properties for SD59x18 (118 properties) and UD60x18 (90 properties), covering all math functions except for: gm, floor, ceil, frac.
### Describe the desired feature or improvement Uniswap v2 might be a good first one
## It includes following ERC1155 internal and external properties: ### Basic properties - `balanceOf()` should revert on address zero - `balanceOfBatch` Works as expected - `safeTransferFrom()` should revert while transferring...
This PR contains the initial integration on the use of medusa for crytic/properties. This includes the execution of ERC20 and ERC4626 tests. A few points should be addressed in future...