diff --git a/test/0.8.25/Accounting.t.sol b/test/0.8.25/Accounting.t.sol index 482a1527e..513ebd156 100644 --- a/test/0.8.25/Accounting.t.sol +++ b/test/0.8.25/Accounting.t.sol @@ -11,7 +11,6 @@ import {console2} from "forge-std/console2.sol"; import {ReportValues} from "contracts/common/interfaces/ReportValues.sol"; import {BaseProtocolTest} from "./Protocol__Deployment.t.sol"; -import {console2} from "../../foundry/lib/forge-std/src/console2.sol"; interface IAccounting { function handleOracleReport(ReportValues memory _report) external; @@ -133,6 +132,11 @@ contract AccountingTest is BaseProtocolTest { * forge-config: default.invariant.fail-on-revert = true */ function invariant_fuzzTotalShares() public { + // - 0 OR 10% OF PROTOCOL FEES SHOULD BE REPORTED (Collect total fees from reports in handler) + // - user tokens must not be used except burner contract (from Zero / to Zero) + // - should not be able to decrease validator number + // - solvency - stETH <> ETH = 1:1 - internal and total share rates are equal + // - vault params do not affect protocol share rate assertGt(accountingHandler.length(), 0); // TODO: add real invariant, this is just a placeholder } } diff --git a/test/0.8.25/ShareRate.t.sol b/test/0.8.25/ShareRate.t.sol index 052d1da53..15c2b823d 100644 --- a/test/0.8.25/ShareRate.t.sol +++ b/test/0.8.25/ShareRate.t.sol @@ -93,6 +93,10 @@ contract ShareRateTest is BaseProtocolTest { bytes4[] memory selectors = new bytes4[](2); selectors[0] = shareRateHandler.mintExternalShares.selector; selectors[1] = shareRateHandler.burnExternalShares.selector; + // TODO: transfers + // TODO: submit + // TODO: withdrawals request + // TODO: claim targetSelector(FuzzSelector({addr: address(shareRateHandler), selectors: selectors}));