Strategy Properties
Last updated
Last updated
Property | Echidna | Formally Verified |
---|---|---|
invest: reverts if msg.sender is not manager
✓
✓
invest: reverts if underlying balance is zero
✓
✓
invest: deposits underlying to the stabilityPool
✓
✓
withdrawToVault: reverts if msg.sender is not manager
✓
✓
withdrawToVault: reverts if amount is zero
✓
✓
withdrawToVault: reverts if amount is greater than invested assets
✓
✓
withdrawToVault: works if amount is less than invested assets
✓
✓
withdrawToVault: works if amount is equal than invested assets
✓
✓
allowSwapTarget: reverts if msg.sender is not settings role
✓
✓
allowSwapTarget: add _swapTarget to allowedSwapTargets.
✓
denySwapTarget: reverts if msg.sender is not settings role
✓
✓
denySwapTarget: remove _swapTarget from allowedSwapTargets.
✓
setMinPrincipalProtectionPct: reverts if msg.sender is not settings role
✓
✓
reinvest: reverts if msg.sender is not keeper role
✓
✓
initialize: can be called only once
✓
harvest: claim ETH and LQTY rewards from stability pool
✓
investedAssets() > 0 <=> hasAssets()
✓
isSync() == true
✓
transferAdminRights: reverts if msg.sender is not admin.
✓
transferAdminRights: transfer admin rights to the new admin
✓
invest: reverts if msg.sender is not manager
✓
invest: reverts if underlying balance is zero
✓
invest: deposits underlying to the ryskLqPool.
✓
withdrawToVault: reverts if msg.sender is not manager
✓
withdrawToVault: reverts if amount is zero
✓
withdrawToVault: initiate withdraw from the ryskLqPool if amount > 0
✓
completeWithdrawal: reverts if msg.sender is not keeper
✓
completeWithdrawal: withdraw underlying from the ryskLqPool to vault
✓
investedAssets() > 0 <=> hasAssets()
✓
isSync() == false
✓
transferAdminRights: reverts if msg.sender is not admin.
✓
transferAdminRights: transfer admin rights to the new admin
✓