-
Notifications
You must be signed in to change notification settings - Fork 71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: mixbytes #61
Closed
Closed
fix: mixbytes #61
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
fix: add inheritdoc
* fix: skip if eMode is the same * fix: add a test
* fix: add comments * Update src/contracts/interfaces/IPool.sol
Stable rate removal
…th other methods (#26)
* feat: add library deploy scripts * fix: patch eMode snapshots
- liquid eModes - deprecation of stable debt
Co-authored-by: Ernesto Boado <[email protected]>
Foundry report forge 0.2.0 (25f24e6 2024-09-30T00:21:14.456565807Z) Build logCompiling 399 files with Solc 0.8.20
Solc 0.8.20 finished in 102.10s
Compiler run successful with warnings:
Warning (9302): Return value of low-level calls not used.
--> src/contracts/treasury/RevenueSplitter.sol:68:5:
|
68 | RECIPIENT_A.call{value: amount_A}('');
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Warning (9302): Return value of low-level calls not used.
--> src/contracts/treasury/RevenueSplitter.sol:69:5:
|
69 | RECIPIENT_B.call{value: amount_B}('');
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Warning (5740): Unreachable code.
--> src/contracts/dependencies/openzeppelin/ReentrancyGuard.sol:61:5:
|
61 | _status = _NOT_ENTERED;
| ^^^^^^^^^^^^^^^^^^^^^^
Warning (2072): Unused local variable.
--> tests/extensions/static-a-token/StataTokenV2Rescuable.sol:47:5:
|
47 | address treasury = IAToken(aToken).RESERVE_TREASURY_ADDRESS();
| ^^^^^^^^^^^^^^^^ Test success 🌈No files changed, compilation skipped
Ran 20 tests for tests/protocol/configuration/ACLManager.t.sol:ACLManagerTest
[PASS] testDefaultAdminRoleAfterDeploy() (gas: 20689)
[PASS] test_defaultAdmin_grantAdminRole_FlashBorrowAdmin() (gas: 65510)
[PASS] test_defaultAdmin_grants_AssetsListingRole() (gas: 37593)
[PASS] test_defaultAdmin_grants_BridgeRole() (gas: 37659)
[PASS] test_defaultAdmin_grants_EmergencyAdminRole() (gas: 37606)
[PASS] test_defaultAdmin_grants_PoolAdminRole() (gas: 37726)
[PASS] test_defaultAdmin_grants_RiskRole() (gas: 37723)
[PASS] test_defaultAdmin_remove_AssetsListingRole() (gas: 29442)
[PASS] test_defaultAdmin_remove_BridgeRole() (gas: 29531)
[PASS] test_defaultAdmin_remove_EmergencyAdminRole() (gas: 29426)
[PASS] test_defaultAdmin_remove_PoolAdminRole() (gas: 29548)
[PASS] test_defaultAdmin_remove_RiskRole() (gas: 29432)
[PASS] test_flashBorrowAdmin_grantRole_FlashBorrowRole() (gas: 91916)
[PASS] test_flashBorrowAdmin_removeRole_FlashBorrowRole() (gas: 76438)
[PASS] test_remove_riskAdmin() (gas: 29442)
[PASS] test_revert_anyUser_grantAdminRole_FlashBorrowAdmin() (gas: 72851)
[PASS] test_revert_deploy_ACLADMIN_zeroAddress() (gas: 1470125)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_addRole_FlashBorrowRole() (gas: 98836)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_revokeRole_FlashBorrowRole() (gas: 125219)
[PASS] test_reverts_notAdmin_grantRole_FlashBorrow() (gas: 115150)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 9.11ms (3.05ms CPU time)
Ran 17 tests for tests/protocol/tokenization/ATokenEdgeCases.t.sol:ATokenEdgeCasesTests
[PASS] testApprove() (gas: 45105)
[PASS] testApproveMax() (gas: 45208)
[PASS] testApproveWithZeroAddressSpender() (gas: 42159)
[PASS] testCheckGetters() (gas: 259854)
[PASS] testDecreaseAllowance() (gas: 53034)
[PASS] testIncreaseAllowance() (gas: 53078)
[PASS] testIncreaseAllowanceFromZero() (gas: 48398)
[PASS] testMintToTreasury_amount_zero() (gas: 15793)
[PASS] testTransferFromZeroAmount() (gas: 129479)
[PASS] test_burn_zeroAddress() (gas: 266236)
[PASS] test_mintToZeroAddress() (gas: 82271)
[PASS] test_poolAdmin_setIncentivesController() (gas: 35820)
[PASS] test_revert_notAdmin_setIncentivesController() (gas: 40389)
[PASS] test_reverts_burnAmountScaledZero() (gas: 19433)
[PASS] test_reverts_mintAmountScaledZero() (gas: 19577)
[PASS] test_transferFrom_zeroAddress_origin() (gas: 129290)
[PASS] test_transfer_amount_MAX_UINT_128() (gas: 16460)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 34.43ms (3.28ms CPU time)
Ran 8 tests for tests/protocol/tokenization/ATokenEvents.t.sol:ATokenEventsTests
[PASS] test_atoken_burnEvents_fullBalance() (gas: 561778)
[PASS] test_atoken_burnEvents_multipleWithdrawals_withInterests() (gas: 649214)
[PASS] test_atoken_burnEvents_singleWithdraw_WithInterests() (gas: 572401)
[PASS] test_atoken_burnEvents_singleWithdraw_noInterests() (gas: 254683)
[PASS] test_atoken_burnEvents_withdrawAmountLessThanInterests() (gas: 575249)
[PASS] test_atoken_mintEvents_firstSupply() (gas: 249566)
[PASS] test_atoken_mintEvents_supplyAfterBorrow() (gas: 627897)
[PASS] test_mintToTreasury_events() (gas: 90162)
Suite result: ok. 8 passed; 0 failed; 0 skipped; finished in 41.56ms (10.88ms CPU time)
Ran 4 tests for tests/protocol/tokenization/ATokenModifiers.t.sol:ATokenModifiersTests
[PASS] test_revert_notAdmin_burn() (gas: 17084)
[PASS] test_revert_notAdmin_mint() (gas: 17178)
[PASS] test_revert_notAdmin_transferOnLiquidation() (gas: 17210)
[PASS] test_revert_notAdmin_transferUnderlyingTo() (gas: 17015)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 31.29ms (266.22µs CPU time)
Ran 9 tests for tests/protocol/tokenization/ATokenPermit.t.sol:ATokenPermitTests
[PASS] testCheckDomainSeparator() (gas: 26163)
[PASS] test_cancelPermit() (gas: 100693)
[PASS] test_chain_fork_calculateDomainSeparator() (gas: 32906)
[PASS] test_revert_submitPermit_0_expiration() (gas: 46698)
[PASS] test_revert_submitPermit_invalid_expiration_previosCurrentBlock() (gas: 47177)
[PASS] test_revert_submitPermit_invalid_nonce() (gas: 55087)
[PASS] test_revert_submitPermit_invalid_owner() (gas: 46525)
[PASS] test_revert_submitPermit_invalid_signature() (gas: 54947)
[PASS] test_submitPermit() (gas: 94296)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 36.74ms (5.61ms CPU time)
Ran 3 tests for tests/protocol/tokenization/ATokenRepay.t.sol:ATokenRepayTests
[PASS] test_repay_allDebt() (gas: 274861)
[PASS] test_repay_partialDebt() (gas: 274021)
[PASS] test_revert_repay_withoutFunds() (gas: 180200)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 39.94ms (2.00ms CPU time)
Ran 3 tests for tests/protocol/tokenization/ATokenRescueTokens.sol:ATokenRescueTokensTests
[PASS] test_rescueTokens() (gas: 77965)
[PASS] test_reverts_rescueTokens_CALLER_NOT_POOL_ADMIN() (gas: 70878)
[PASS] test_reverts_rescueTokens_UNDERLYING_CANNOT_BE_RESCUED() (gas: 71617)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 31.18ms (635.05µs CPU time)
Ran 11 tests for tests/protocol/tokenization/ATokenTransfers.t.sol:ATokenTransferTests
[PASS] test_atoken_alice_transfer_all_to_bob() (gas: 161976)
[PASS] test_atoken_alice_transfer_to_bob() (gas: 231423)
[PASS] test_atoken_alice_transfer_to_bob_zero() (gas: 159737)
[PASS] test_atoken_alice_transfer_to_carol_accrues_interests() (gas: 223346)
[PASS] test_atoken_alice_transfer_to_herself() (gas: 81523)
[PASS] test_atoken_alice_transfer_to_herself_zero() (gas: 81564)
[PASS] test_atoken_multiple_transfers() (gas: 201155)
[PASS] test_atoken_transfer_sets_enabled_as_collateral(uint64,uint256) (runs: 1000, μ: 385941, ~: 390068)
[PASS] test_atoken_transfer_some_collateral_from_bob_borrower_to_alice() (gas: 523001)
[PASS] test_atoken_transfer_to_bob_them_bob_borrows() (gas: 395366)
[PASS] test_reverts_atoken_transfer_all_collateral_from_bob_borrower_to_alice() (gas: 404648)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 1.19s (1.16s CPU time)
Ran 12 tests for tests/misc/AaveOracle.t.sol:AaveOracleTest
[PASS] testAddSingleSource() (gas: 936961)
[PASS] testAssetZeroPriceAndZeroFallbackPrice() (gas: 1076187)
[PASS] testAssetZeroPriceNonZeroFallback() (gas: 1096138)
[PASS] testAssetZeroPriceWithoutFallback() (gas: 918632)
[PASS] testEmptySource() (gas: 821554)
[PASS] testGetBaseCurrencyPrice() (gas: 12315)
[PASS] testGetPriceViaFallbackOracle() (gas: 1000288)
[PASS] testUpdateFallbackOracle() (gas: 178617)
[PASS] testUpdateSingleSource() (gas: 127061)
[PASS] testUpdateSourceBaseCurrency() (gas: 138611)
[PASS] test_revert_setAssetSources_inconsistentParams() (gas: 822968)
[PASS] test_revert_setAssetSources_wrongCaller() (gas: 24620)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 33.73ms (2.61ms CPU time)
Ran 5 tests for tests/deployments/AaveV3BatchDeployment.t.sol:AaveV3BatchDeployment
[PASS] testAaveV3BatchDeploy() (gas: 55882408)
[PASS] testAaveV3BatchDeploymentCheck() (gas: 64047333)
[PASS] testAaveV3Batch_reuseIncentivesProxy() (gas: 55359217)
[PASS] testAaveV3L2BatchDeploymentCheck() (gas: 65875461)
[PASS] testAaveV3TreasuryPartnerBatchDeploymentCheck() (gas: 64554401)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 106.82ms (101.68ms CPU time)
Ran 12 tests for tests/deployments/AaveV3BatchTests.t.sol:AaveV3BatchTests
[PASS] test0AaveV3SetupDeployment() (gas: 4866983)
[PASS] test10StaticATokenDeployment() (gas: 6958488)
[PASS] test1AaveV3GettersDeployment() (gas: 7880458)
[PASS] test2AaveV3PoolDeployment() (gas: 8613567)
[PASS] test3AaveV3L2PoolDeployment() (gas: 8864359)
[PASS] test4PeripheralsRelease() (gas: 6900496)
[PASS] test5MiscDeployment() (gas: 929135)
[PASS] test6ParaswapRelease() (gas: 5928367)
[PASS] test7SetupMarket() (gas: 2695057)
[PASS] test8TokensMarket() (gas: 3901080)
[PASS] test9ConfigEngineDeployment() (gas: 6715437)
[PASS] testAaveV3FullBatchOrchestration() (gas: 55878657)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 24.96ms (13.97ms CPU time)
Ran 13 tests for tests/protocol/pool/Pool.Supply.t.sol:PoolSupplyTests
[PASS] test_deprecated_deposit() (gas: 240984)
[PASS] test_first_supply() (gas: 240985)
[PASS] test_first_supply_on_behalf() (gas: 243032)
[PASS] test_reverts_supply_cap() (gas: 105400)
[PASS] test_reverts_supply_invalidAmount() (gas: 47837)
[PASS] test_reverts_supply_reserveFrozen() (gas: 117686)
[PASS] test_reverts_supply_reserveInactive() (gas: 130809)
[PASS] test_reverts_supply_reservePaused() (gas: 88490)
[PASS] test_reverts_supply_to_aToken() (gas: 50356)
[PASS] test_supplyWithPermit(uint128,uint128,uint128) (runs: 1000, μ: 422679, ~: 422689)
[PASS] test_supplyWithPermit_not_failing_if_permit_was_used(uint128,uint128,uint128) (runs: 1000, μ: 422878, ~: 422897)
[PASS] test_supplyWithPermit_should_revert_if_permit_is_less_then_supply_amount(uint128,uint128) (runs: 1000, μ: 288147, ~: 288150)
[PASS] test_supply_after_collateral_enabled() (gas: 287780)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 5.75s (5.71s CPU time)
Ran 11 tests for tests/protocol/pool/Pool.Withdraw.t.sol:PoolWithdrawTests
[PASS] test_Reverts_withdraw_transferred_funds() (gas: 549361)
[PASS] test_full_withdraw() (gas: 234895)
[PASS] test_full_withdraw_to() (gas: 240423)
[PASS] test_partial_withdraw() (gas: 231403)
[PASS] test_reverts_withdraw_hf_lt_lqt() (gas: 678644)
[PASS] test_reverts_withdraw_invalidAmount() (gas: 247376)
[PASS] test_reverts_withdraw_invalidBalance() (gas: 249446)
[PASS] test_reverts_withdraw_reserveInactive() (gas: 210630)
[PASS] test_reverts_withdraw_reservePaused() (gas: 287040)
[PASS] test_reverts_withdraw_to_atoken() (gas: 247232)
[PASS] test_withdraw_not_enabled_as_collateral() (gas: 248243)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 39.35ms (7.97ms CPU time)
Ran 37 tests for tests/protocol/pool/Pool.t.sol:PoolTests
[PASS] test_dropReserve() (gas: 104848)
[PASS] test_getBorrowLogic() (gas: 13641)
[PASS] test_getBridgeLogic() (gas: 13683)
[PASS] test_getEModeLogic() (gas: 13596)
[PASS] test_getFlashLoanLogic() (gas: 13620)
[PASS] test_getLiquidationLogic() (gas: 13709)
[PASS] test_getPoolLogic() (gas: 13661)
[PASS] test_getSupplyLogic() (gas: 13596)
[PASS] test_getVirtualUnderlyingBalance() (gas: 250523)
[PASS] test_getters_getUserAccountData() (gas: 598330)
[PASS] test_mintToTreasury() (gas: 696586)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 701278)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 290816)
[PASS] test_pool_defaultValues() (gas: 4456261)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81870, ~: 82148)
[PASS] test_resetIsolationModeTotalDebt() (gas: 728261)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 25452, ~: 25452)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 127719, ~: 127719)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4468409)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_AssetNotListed(address,address) (runs: 1000, μ: 40838, ~: 40838)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_ZeroAssetAddress(address) (runs: 1000, μ: 22754, ~: 22754)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 978146)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 600262)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 298997)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 223085)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 293842)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 71780)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 786117)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 36904, ~: 36991)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 27115, ~: 27115)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 901367)
[PASS] test_setUserEmode() (gas: 228402)
[PASS] test_setUserEmode_twice() (gas: 371009)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 978813)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 240420)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 277917)
[PASS] test_updateBridgeProtocolFee() (gas: 253)
Suite result: ok. 37 passed; 0 failed; 0 skipped; finished in 1.10s (1.06s CPU time)
Ran 22 tests for tests/protocol/configuration/PoolAddressesProvider.t.sol:PoolAddressesProviderTests
[PASS] test_PoolDataProvider_changeContract() (gas: 1472801)
[PASS] test_getter_getMarketId() (gas: 1435230)
[PASS] test_new_PoolAddressesProvider() (gas: 1444460)
[PASS] test_reverts_setAddressAsProxy_notAuth() (gas: 1448636)
[PASS] test_reverts_setAddress_noAuth() (gas: 1453813)
[PASS] test_reverts_setters_notOwner() (gas: 1451422)
[PASS] test_setACLManager_changeContract() (gas: 3014312)
[PASS] test_setACLManager_setACLAdmin() (gas: 2248265)
[PASS] test_setAddress() (gas: 1462728)
[PASS] test_setAddressAsProxy_new_proxy() (gas: 2020462)
[PASS] test_setAddressAsProxy_upgrade_proxy() (gas: 2132834)
[PASS] test_setAddress_updateAddress() (gas: 1471854)
[PASS] test_setPoolConfiguratorImpl() (gas: 5950177)
[PASS] test_setPoolConfiguratorImpl_upgrade() (gas: 10439090)
[PASS] test_setPoolDataProvider() (gas: 1463246)
[PASS] test_setPoolImpl() (gas: 6339671)
[PASS] test_setPoolImpl_upgrade() (gas: 10828181)
[PASS] test_setPriceOracle() (gas: 1463403)
[PASS] test_setPriceOracleSentinel() (gas: 1463274)
[PASS] test_setPriceOracleSentinel_changeContract() (gas: 1472878)
[PASS] test_setPriceOracle_changeContract() (gas: 1473139)
[PASS] test_setter_setMarketId() (gas: 1446381)
Suite result: ok. 22 passed; 0 failed; 0 skipped; finished in 31.53ms (5.38ms CPU time)
Ran 24 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.ACLModifiers.t.sol:PoolConfiguratorACLModifiersTest
[PASS] test_reverts_disableLiquidationGracePeriod_on_unauth(address,address) (runs: 1000, μ: 38594, ~: 38594)
[PASS] test_reverts_notAdmin_dropReserve(address) (runs: 1000, μ: 36181, ~: 36181)
[PASS] test_reverts_notAdmin_initReserves((uint8,string,string,string,string,address,address,address,bool),address) (runs: 1000, μ: 1051497, ~: 1051558)
[PASS] test_reverts_notAdmin_setReserveActive(address) (runs: 1000, μ: 36287, ~: 36287)
[PASS] test_reverts_notAdmin_updateAToken(address) (runs: 1000, μ: 35272, ~: 35272)
[PASS] test_reverts_notAdmin_updateFlashLoanPremiumProtocol(address) (runs: 1000, μ: 34033, ~: 34033)
[PASS] test_reverts_notAdmin_updateFlashLoanPremiumTotal(address) (runs: 1000, μ: 34030, ~: 34030)
[PASS] test_reverts_notAdmin_updateVariableDebtToken(address) (runs: 1000, μ: 35015, ~: 35015)
[PASS] test_reverts_notRiskAdmin_configureReserveAsCollateral(address) (runs: 1000, μ: 38679, ~: 38679)
[PASS] test_reverts_notRiskAdmin_setAssetCollateralInEMode(address) (runs: 1000, μ: 38813, ~: 38813)
[PASS] test_reverts_notRiskAdmin_setBorrowCap(address) (runs: 1000, μ: 38605, ~: 38605)
[PASS] test_reverts_notRiskAdmin_setEModeCategory(address) (runs: 1000, μ: 39132, ~: 39132)
[PASS] test_reverts_notRiskAdmin_setReserveBorrowing(address) (runs: 1000, μ: 38645, ~: 38645)
[PASS] test_reverts_notRiskAdmin_setReserveFactor(address) (runs: 1000, μ: 38606, ~: 38606)
[PASS] test_reverts_notRiskAdmin_setReserveInterestRateData(address,address) (runs: 1000, μ: 39368, ~: 39368)
[PASS] test_reverts_notRiskAdmin_setReserveInterestRateStrategyAddress(address) (runs: 1000, μ: 39276, ~: 39276)
[PASS] test_reverts_notRiskAdmin_setSupplyCap(address) (runs: 1000, μ: 38517, ~: 38517)
[PASS] test_reverts_notRiskOrPoolOrEmergencyAdmin_setReserveFreeze(address) (runs: 1000, μ: 43151, ~: 43151)
[PASS] test_reverts_setDebtCeiling(address) (runs: 1000, μ: 38629, ~: 38629)
[PASS] test_reverts_setPoolPause_noGracePeriod_unauth(address,bool) (runs: 1000, μ: 38557, ~: 38557)
[PASS] test_reverts_setPoolPause_unauth(address,bool,uint40) (runs: 1000, μ: 56180, ~: 56180)
[PASS] test_reverts_setReservePause_noGracePeriod_off_unauth(address,address,bool) (runs: 1000, μ: 38851, ~: 38851)
[PASS] test_reverts_setReservePause_off_unauth(address,address,bool,uint40) (runs: 1000, μ: 39016, ~: 39016)
[PASS] test_reverts_setReservePause_on_unauth(address,address,bool,uint40) (runs: 1000, μ: 38993, ~: 38993)
Suite result: ok. 24 passed; 0 failed; 0 skipped; finished in 4.26s (4.24s CPU time)
Ran 10 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.borrowCaps.t.sol:PoolConfiguratorBorrowCapTests
[PASS] test_borrow_eq_cap() (gas: 318702)
[PASS] test_borrow_interests_reach_cap() (gas: 320750)
[PASS] test_borrow_lt_cap() (gas: 299144)
[PASS] test_default_borrowCap_zero() (gas: 27547)
[PASS] test_reverts_borrow_after_borrow_interests_reach_cap() (gas: 367178)
[PASS] test_reverts_borrow_gt_cap() (gas: 142685)
[PASS] test_reverts_setBorrowCap_gt_max_cap() (gas: 48711)
[PASS] test_reverts_unauthorized_setBorrowCap() (gas: 35517)
[PASS] test_setBorrowCap() (gas: 78860)
[PASS] test_setBorrowCap_them_setBorrowCap_zero() (gas: 319851)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 57.63ms (5.96ms CPU time)
Ran 13 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.eMode.sol:PoolConfiguratorEModeConfigTests
[PASS] test_addAnotherAssetBorrowableInEMode() (gas: 283039)
[PASS] test_addAnotherAssetCollateralInEMode() (gas: 263180)
[PASS] test_configureEmodeCategory() (gas: 118572)
[PASS] test_removeBorrowableFromEmode() (gas: 194690)
[PASS] test_removeCollateralFromEmode() (gas: 240895)
[PASS] test_reverts_setEmodeCategory_lb_lte_percentageFactor() (gas: 59662)
[PASS] test_reverts_setEmodeCategory_liquidation_threshold_doesnt_match_bonus() (gas: 35793)
[PASS] test_reverts_setEmodeCategory_ltv_gt_liqThreshold() (gas: 34377)
[PASS] test_reverts_setEmodeCategory_zero_liqThreshold() (gas: 34249)
[PASS] test_reverts_setEmodeCategory_zero_ltv() (gas: 34162)
[PASS] test_setAssetBorrowableInEMode() (gas: 214602)
[PASS] test_setAssetCollateralInEMode() (gas: 194712)
[PASS] test_updateEModeCategory() (gas: 204283)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 38.07ms (7.53ms CPU time)
Ran 11 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.supplyCaps.t.sol:PoolConfiguratorSupplyCapTests
[PASS] test_default_supplyCap_zero() (gas: 27525)
[PASS] test_multiple_setSupplyCap() (gas: 371753)
[PASS] test_reverts_interests_gt_cap_and_supply() (gas: 477658)
[PASS] test_reverts_setSupplyCap_gt_max_cap() (gas: 48667)
[PASS] test_reverts_supply_gt_cap() (gas: 124848)
[PASS] test_reverts_unauthorized_setSupplyCap() (gas: 35454)
[PASS] test_setSupplyCap() (gas: 78895)
[PASS] test_setSupplyCap_them_setBorrowCap_zero() (gas: 319113)
[PASS] test_supply_eq_cap() (gas: 300294)
[PASS] test_supply_interests_reach_cap() (gas: 438985)
[PASS] test_supply_lt_cap() (gas: 300295)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 38.48ms (6.68ms CPU time)
Ran 6 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.upgradeabilty.t.sol:PoolConfiguratorUpgradeabilityTests
[PASS] test_getConfiguratorLogic() (gas: 13610)
[PASS] test_interestRateStrategy_update() (gas: 1834576)
[PASS] test_setReserveInterestRateData() (gas: 151671)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 1010204)
[PASS] test_updateAToken() (gas: 2307981)
[PASS] test_updateVariableDebtToken() (gas: 1705168)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 36.31ms (4.67ms CPU time)
Ran 3 tests for tests/protocol/libraries/logic/PoolLogic.initReserves.edge.t.sol:PoolLogicInitReservesTests
[PASS] test_initReserves_return_false_after_dropped_reserve() (gas: 680432)
[PASS] test_reverts_initReserves_max() (gas: 196981)
[PASS] test_reverts_initReserves_reserveAlreadyAdded() (gas: 220386)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 32.39ms (745.95µs CPU time)
Ran 11 tests for tests/misc/PriceOracleSentinel.t.sol:PriceOracleSentinelTest
[PASS] test_isBorrowAllowed_network_down() (gas: 27223)
[PASS] test_isBorrowAllowed_network_up_not_grace_period() (gas: 46925)
[PASS] test_isBorrowAllowed_true_network_up_grace_period_pass() (gas: 46979)
[PASS] test_isLiquidationAllowed_network_down() (gas: 27134)
[PASS] test_isLiquidationAllowed_network_up_not_grace_period() (gas: 46902)
[PASS] test_isLiquidationAllowed_true_network_up_grace_period_pass() (gas: 47000)
[PASS] test_new_PriceOracleSentinel() (gas: 423531)
[PASS] test_reverts_setGracePeriod_not_poolAdmin() (gas: 25829)
[PASS] test_reverts_setSequencerOracle_not_poolAdmin() (gas: 22737)
[PASS] test_setGracePeriod() (gas: 32496)
[PASS] test_setSequencerOracle() (gas: 24631)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 34.58ms (1.07ms CPU time)
Ran 3 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.pendingLTV.t.sol:PoolConfiguratorPendingLtvTests
[PASS] test_freezeReserve_ltvSetTo0() (gas: 107849)
[PASS] test_setLtv_ltvSetPendingLtvSet(uint256,uint256) (runs: 1000, μ: 143974, ~: 143974)
[PASS] test_unfreezeReserve_pendingSetToLtv() (gas: 109245)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 1.08s (1.05s CPU time)
Ran 13 tests for tests/misc/rates/RateStrategy.calculateRates.t.sol:RateStrategyCalculateRatesTests
[PASS] test_calculate_rates_100_percent_usage() (gas: 44988)
[PASS] test_calculate_rates_80_bps_usage() (gas: 45107)
[PASS] test_calculate_rates_80_percent_usage() (gas: 87758)
[PASS] test_calculate_rates_80_percent_usage_and_50_percent_supply_usage_due_minted_tokens() (gas: 43313)
[PASS] test_calculate_rates_80_percent_usage_and_80_bps_supply_usage_due_minted_tokens() (gas: 43335)
[PASS] test_calculate_rates_above_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 121645, ~: 121713)
[PASS] test_calculate_rates_below_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 114173, ~: 114293)
[PASS] test_calculate_rates_below_op_usage_when_no_debt((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 71450, ~: 71769)
[PASS] test_calculate_rates_empty_reserve((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 39838, ~: 39838)
[PASS] test_calculate_rates_when_not_using_virtual_valance((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 64181, ~: 64818)
[PASS] test_calculate_rates_when_total_debt_0((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 64301, ~: 65038)
[PASS] test_fuzz_calculate_rates_80_percent_usage_added_and_virtual_equal(uint256) (runs: 1000, μ: 29922, ~: 29922)
[PASS] test_zero_rates_strategy_calculate_rates() (gas: 19289)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 13.50s (13.46s CPU time)
Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTests
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 48199, ~: 48199)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21930, ~: 21930)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 25547, ~: 25547)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22536, ~: 22536)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22584, ~: 22584)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22855, ~: 22855)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23886, ~: 23886)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 3.52s (3.49s CPU time)
Ran 44 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.reserveRiskConfig.t.sol:PoolConfiguratorReserveRiskConfigs
[PASS] test_EmergencyAdminSetReserveFreeze_true() (gas: 137081)
[PASS] test_PoolAdminSetReserveFreeze_true() (gas: 101346)
[PASS] test_RiskAdminSetReserveFreeze_true() (gas: 130770)
[PASS] test_bridgeProtocolFee() (gas: 72994)
[PASS] test_disableLiquidationGracePeriod() (gas: 80452)
[PASS] test_dropReserve() (gas: 144860)
[PASS] test_enableBorrowing((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2629145, ~: 2628137)
[PASS] test_enableFlashBorrow((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2618587, ~: 2618887)
[PASS] test_reverts_bridgeProtocolFee() (gas: 30151)
[PASS] test_reverts_dropReserve_notListed() (gas: 53404)
[PASS] test_reverts_dropReserve_supplyNotZero() (gas: 300324)
[PASS] test_reverts_dropReserve_variableDebtNotZero() (gas: 459401)
[PASS] test_reverts_dropReserve_zeroAddress() (gas: 47308)
[PASS] test_reverts_setCollateralConfig_invalidParams((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2866125, ~: 2865931)
[PASS] test_reverts_setDebtCeiling_suppliers() (gas: 292550)
[PASS] test_reverts_setLiquidationProtocolFee_amount_gt_percentageFactor() (gas: 35632)
[PASS] test_reverts_setReserveActive_false_if_suppliers() (gas: 287419)
[PASS] test_reverts_setReserveFactor_gt_percentageFactor() (gas: 35651)
[PASS] test_reverts_setSiloedBorrowing_borrowers() (gas: 414346)
[PASS] test_reverts_updateFlashloanPremiumToProtocol() (gas: 30267)
[PASS] test_reverts_updateFlashloanPremiumTotal() (gas: 30287)
[PASS] test_setBorrowableInIsolation_false() (gas: 65034)
[PASS] test_setBorrowableInIsolation_true() (gas: 67851)
[PASS] test_setCollateralConfig((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2606678, ~: 2605631)
[PASS] test_setDebtCeiling() (gas: 120854)
[PASS] test_setDebtCeiling_suppliers_ltZero() (gas: 295808)
[PASS] test_setDebtCeiling_to_zero() (gas: 145716)
[PASS] test_setFrozenReserveFreeze_true_revert() (gas: 108173)
[PASS] test_setLiquidationGracePeriodAboveCap(uint40) (runs: 1000, μ: 34809, ~: 34809)
[PASS] test_setLiquidationGracePeriodPool(uint40) (runs: 1000, μ: 137045, ~: 139785)
[PASS] test_setLiquidationGracePeriodReserve(uint40) (runs: 1000, μ: 138272, ~: 138591)
[PASS] test_setLiquidationProtocolFee_amount_gt_percentageFactor() (gas: 74859)
[PASS] test_setPoolPause() (gas: 139170)
[PASS] test_setPoolPause_unpause() (gas: 197367)
[PASS] test_setReserveActive_false() (gas: 118103)
[PASS] test_setReserveActive_true() (gas: 69283)
[PASS] test_setReserveFactor() (gas: 976606)
[PASS] test_setReserveFreeze_false() (gas: 100868)
[PASS] test_setReservePause_false() (gas: 68656)
[PASS] test_setReservePause_true() (gas: 71411)
[PASS] test_setSiloedBorrowing() (gas: 117368)
[PASS] test_setUnfrozenReserveFreeze_false_revert() (gas: 48826)
[PASS] test_updateFlashloanPremiumToProtocol() (gas: 58261)
[PASS] test_updateFlashloanPremiumTotal() (gas: 58175)
Suite result: ok. 44 passed; 0 failed; 0 skipped; finished in 7.66s (7.63s CPU time)
Ran 4 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.liquidationFee.t.sol:PoolConfiguratorLiquidationFeeTests
[PASS] test_revert_setLiquidationFee_gt_100() (gas: 59237)
[PASS] test_revert_setLiquidationFee_unauthorized() (gas: 59105)
[PASS] test_setLiquidationFee() (gas: 78707)
[PASS] test_setLiquidationFee_100() (gas: 78663)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 37.01ms (890.59µs CPU time)
Ran 12 tests for tests/protocol/libraries/logic/BridgeLogic.t.sol:BridgeLogicTests
[PASS] test_backUnbacked_but_unbacked_is_zero_with_fee() (gas: 190221)
[PASS] test_backUnbacked_but_unbacked_is_zero_with_only_fee() (gas: 190279)
[PASS] test_backUnbacked_but_unbacked_is_zero_without_fee() (gas: 155625)
[PASS] test_backUnbacked_onlyFee() (gas: 357613)
[PASS] test_backUnbacked_withFee() (gas: 357793)
[PASS] test_backUnbacked_withoutFee() (gas: 335091)
[PASS] test_multiple_backUnbacked() (gas: 630498)
[PASS] test_multiple_unbackedMint_with_cap() (gas: 478535)
[PASS] test_revert_multiple_unbackedMint_with_cap() (gas: 420372)
[PASS] test_revert_unathorized_unbackedMint() (gas: 30598)
[PASS] test_revert_unbackedMint_zero_cap() (gas: 86177)
[PASS] test_unbackedMint_with_cap() (gas: 267268)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 50.68ms (16.73ms CPU time)
Ran 14 tests for tests/deployments/DeploymentsGasLimits.t.sol:DeploymentsGasLimits
[PASS] test0AaveV3SetupDeployment() (gas: 4866962)
[PASS] test10ConfigEngineDeployment() (gas: 6715374)
[PASS] test11StaticATokenDeployment() (gas: 6958505)
[PASS] test12PeripheralsTreasuryPartner() (gas: 7387145)
[PASS] test1AaveV3GettersBatch1Deployment() (gas: 6551699)
[PASS] test2AaveV3GettersBatch2Deployment() (gas: 2130240)
[PASS] test3AaveV3PoolDeployment() (gas: 8613533)
[PASS] test4AaveV3L2PoolDeployment() (gas: 8864305)
[PASS] test5PeripheralsRelease() (gas: 6900519)
[PASS] test6MiscDeployment() (gas: 1360185)
[PASS] test7ParaswapDeployment() (gas: 5928390)
[PASS] test8SetupMarket() (gas: 2719620)
[PASS] test9TokensMarket() (gas: 3901228)
[PASS] testCheckInitCodeSizeBatchs() (gas: 1068336)
Logs:
AaveV3SetupBatch 26484
AaveV3L2PoolBatch 43782
AaveV3PoolBatch 42535
AaveV3PeripheryBatch 40126
AaveV3MiscBatch 6830
AaveV3ParaswapBatch 32635
AaveV3GettersBatchOne 32561
AaveV3GettersBatchTwo 11156
AaveV3TokensBatch 20321
AaveV3HelpersBatchOne 34075
AaveV3HelpersBatchTwo 32797
AaveV3PeripheryBatchTreasuryPartner 40126
Suite result: ok. 14 passed; 0 failed; 0 skipped; finished in 24.16ms (9.59ms CPU time)
Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTestsOverride
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 47597, ~: 47597)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21313, ~: 21313)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 24938, ~: 24938)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21927, ~: 21927)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21975, ~: 21975)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22246, ~: 22246)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23277, ~: 23277)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 3.85s (3.81s CPU time)
2024-09-30T21:15:22.891280Z ERROR cheatcodes: non-empty stderr input=["npx", "@bgd-labs/aave-cli@^1.0.0", "diff-snapshots", "./reports/preTestEngineEModeCategoryUpdate.json", "./reports/postTestEngineEModeCategoryUpdate.json", "-o", "./diffs/preTestEngineEModeCategoryUpdate_postTestEngineEModeCategoryUpdate.md"] stderr="file:///home/runner/work/aave-v3-origin/aave-v3-origin/node_modules/@bgd-labs/aave-cli/dist/cli.js:843
(key) => typeof input2[key] === "object" && (input2[key].hasOwnProperty("from") || input2[key].hasOwnProperty("to"))
^
TypeError: Cannot read properties of null (reading 'hasOwnProperty')
at file:///home/runner/work/aave-v3-origin/aave-v3-origin/node_modules/@bgd-labs/aave-cli/dist/cli.js:843:62
at Array.find (<anonymous>)
at hasDiff (file:///home/runner/work/aave-v3-origin/aave-v3-origin/node_modules/@bgd-labs/aave-cli/dist/cli.js:842:32)
at diffReports (file:///home/runner/work/aave-v3-origin/aave-v3-origin/node_modules/@bgd-labs/aave-cli/dist/cli.js:916:26)
at async Command.<anonymous> (file:///home/runner/work/aave-v3-origin/aave-v3-origin/node_modules/@bgd-labs/aave-cli/dist/cli.js:955:21)
Node.js v18.20.4
"
Ran 15 tests for tests/misc/rates/RateStrategy.t.sol:RateStrategyBaseTests
[PASS] test_getInterestRateDataBps((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 36071, ~: 36071)
[PASS] test_getInterestRateDataRay((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 36997, ~: 36997)
[PASS] test_getMaxVariableBorrowRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 34506, ~: 34506)
[PASS] test_initialization() (gas: 27078)
[PASS] test_new_DefaultReserveInterestRateStrategy_wrong_provider() (gas: 42406)
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 48170, ~: 48170)
[PASS] test_new_SetReserveInterestRateParams_override_method((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 45375, ~: 45375)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21956, ~: 21956)
[PASS] test_overflow_liquidity_rates() (gas: 59538)
[PASS] test_overflow_variable_rates() (gas: 545875)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 34978, ~: 34978)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 31521, ~: 31521)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 31597, ~: 31597)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 27959, ~: 27959)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2(uint16,uint32,uint32,uint32) (runs: 1000, μ: 33710, ~: 33710)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 6.29s (6.25s CPU time)
Ran 17 tests for tests/extensions/v3-config-engine/AaveV3ConfigEngineTest.t.sol:AaveV3ConfigEngineTest
[PASS] testAssetEModeUpdates() (gas: 3714763)
[PASS] testBorrowUpdatesNoChange() (gas: 2724934)
[PASS] testBorrowsUpdates() (gas: 2787946)
[PASS] testCapsUpdate() (gas: 2729605)
[PASS] testCollateralUpdateCorrectBonus() (gas: 2745220)
[PASS] testCollateralUpdateWrongBonus() (gas: 755115)
[PASS] testCollateralsUpdates() (gas: 2744740)
[PASS] testCollateralsUpdatesNoChange() (gas: 2723075)
[PASS] testEModeCategoryUpdates() (gas: 2813310)
[PASS] testEModeCategoryUpdatesNoChange() (gas: 2716387)
[PASS] testEModeCategoryUpdatesWrongBonus() (gas: 743235)
[PASS] testFailCollateralsUpdatesNoChange() (gas: 1718102)
[PASS] testFailEModeCategoryUpdatesNoChange() (gas: 760192)
[PASS] testListings() (gas: 5911546)
[PASS] testListingsCustom() (gas: 9634171)
[PASS] testPriceFeedsUpdates() (gas: 2805303)
[PASS] testRateStrategiesUpdates() (gas: 2793080)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 29.01s (28.98s CPU time)
Ran 2 tests for tests/deployments/AaveV3PermissionsTest.t.sol:AaveV3PermissionsTest
[PASS] testCheckPermissions() (gas: 54893062)
[PASS] testCheckPermissionsTreasuryPartner() (gas: 55382423)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 85.39ms (77.48ms CPU time)
Ran 7 tests for tests/protocol/configuration/AddressesProviderRegistry.t.sol:PoolAddressesProviderRegistryTest
[PASS] testAddAddressesProvider() (gas: 120577)
[PASS] testRemoveAddressesProvider() (gas: 97125)
[PASS] testRemoveMultipleAddressesProvider() (gas: 242924)
[PASS] test_addressesProviderAddedToRegistry() (gas: 16357)
[PASS] test_removesLastProvider() (gas: 32624)
[PASS] test_revert_registry_0() (gas: 15558)
[PASS] test_revert_removeNonExistingAddressesProvider() (gas: 27567)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 68.21ms (4.74ms CPU time)
Ran 1 test for tests/template/BaseTest.t.sol:BaseTest
[PASS] test_default() (gas: 251565)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 54.79ms (428.95µs CPU time)
Ran 5 tests for tests/rewards/StakedTokenTransferStrategy.t.sol:StakedTokenTransferStrategyTest
[PASS] test_dropApproval() (gas: 18982)
[PASS] test_emergencyTransfer() (gas: 218794)
[PASS] test_getters() (gas: 18731)
[PASS] test_performTransfer() (gas: 22028)
[PASS] test_renewApproval() (gas: 23102)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 66.94ms (4.20ms CPU time)
Ran 3 tests for tests/extensions/static-a-token/StataTokenV2Getters.sol:StataTokenV2GettersTest
[PASS] testAdmin() (gas: 22505)
[PASS] test_getters() (gas: 99975)
[PASS] test_initializeShouldRevert() (gas: 24012)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 60.45ms (415.52µs CPU time)
Ran 11 tests for tests/extensions/static-a-token/StataTokenV2Pausable.t.sol:StataTokenV2PausableTest
[PASS] testAdmin() (gas: 22549)
[PASS] test_canPause() (gas: 29245)
[PASS] test_canPause_shouldReturnFalse(address) (runs: 1000, μ: 29741, ~: 29741)
[PASS] test_claimingRewards_shouldRevert() (gas: 554103)
[PASS] test_deposit_shouldRevert() (gas: 482309)
[PASS] test_mint_shouldRevert() (gas: 486639)
[PASS] test_redeem_shouldRevert() (gas: 574372)
[PASS] test_setPaused_shouldRevertForInvalidCaller(address) (runs: 1000, μ: 32802, ~: 32802)
[PASS] test_setPaused_shouldSucceedForOwner() (gas: 57013)
[PASS] test_transfer_shouldRevert() (gas: 552012)
[PASS] test_withdraw_shouldRevert() (gas: 569595)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 275.81ms (204.12ms CPU time)
Ran 4 tests for tests/extensions/static-a-token/StataTokenV2Permit.sol:StataTokenV2PermitTest
[PASS] testAdmin() (gas: 22494)
[PASS] test_permit() (gas: 92824)
[PASS] test_permit_expired() (gas: 40599)
[PASS] test_permit_invalidSigner() (gas: 69099)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 57.98ms (1.93ms CPU time)
Ran 15 tests for tests/extensions/RevenueSplitter.t.sol:RevenueSplitterTest
[PASS] test_constructor() (gas: 15312)
[PASS] test_constructor_fuzzing(uint16) (runs: 1000, μ: 455456, ~: 455456)
[PASS] test_constructor_revert_invalid_split_percentage() (gas: 174521)
[PASS] test_splitFund_oneToken() (gas: 424986)
[PASS] test_splitFund_reverts_randomAddress() (gas: 51331)
[PASS] test_splitFund_zeroAmount_noOp() (gas: 385859)
[PASS] test_splitFund_zeroFunds_noOp() (gas: 50896)
[PASS] test_splitFund_zeroTokens_noOp() (gas: 384777)
[PASS] test_splitFunds_fixed() (gas: 461939)
[PASS] test_splitFunds_fuzz_max(uint256,uint256) (runs: 1000, μ: 462543, ~: 464110)
[PASS] test_splitFunds_fuzz_realistic(uint256,uint256) (runs: 1000, μ: 461559, ~: 462581)
[PASS] test_splitNativeFund_fixedAmount() (gas: 100469)
[PASS] test_splitNativeFund_walletNotAcceptingFunds() (gas: 535352)
[PASS] test_splitNativeFund_zeroAmount_noOp() (gas: 29713)
[PASS] test_splitNativeFunds_fuzz_max(uint256) (runs: 1000, μ: 99972, ~: 101887)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 4.50s (4.50s CPU time)
Ran 19 tests for tests/rewards/RewardsController.t.sol:RewardsControllerTest
[PASS] test_accrueRewards() (gas: 931606)
[PASS] test_claimAllRewards() (gas: 887345)
[PASS] test_claimAllRewardsOnBehalf() (gas: 921050)
[PASS] test_claimAllRewardsToSelf() (gas: 886972)
[PASS] test_claimRewards() (gas: 884121)
[PASS] test_claimRewardsOnBehalf() (gas: 922640)
[PASS] test_claimRewardsToSelf() (gas: 883803)
[PASS] test_claimRewards_partial() (gas: 884391)
[PASS] test_claimRewards_zero() (gas: 636633)
[PASS] test_claimRewards_zero_with_rewards() (gas: 643446)
[PASS] test_configureAssets() (gas: 617685)
[PASS] test_initialize_no_op() (gas: 3668534)
[PASS] test_new_RewardsController() (gas: 3644884)
[PASS] test_reverts_initialize_twice() (gas: 3670113)
[PASS] test_setClaimer() (gas: 58252)
[PASS] test_setDistributionEnd() (gas: 633550)
[PASS] test_setEmissionPerSecond() (gas: 637678)
[PASS] test_setRewardOracle() (gas: 711302)
[PASS] test_setTransferStrategy_PullRewardsTransferStrategy() (gas: 913774)
Suite result: ok. 19 passed; 0 failed; 0 skipped; finished in 47.42ms (13.88ms CPU time)
Ran 1 test for tests/protocol/tokenization/ScaledBalanceTokenBase.t.sol:ScaledBalanceTokenBaseEdgeTests
[PASS] test_scaled_balance_token_base_alice_transfer_to_bob_accrues_interests() (gas: 98768)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 43.96ms (3.36ms CPU time)
Ran 5 tests for tests/extensions/static-a-token/StataTokenV2Rescuable.sol:StataTokenV2RescuableTest
[PASS] testAdmin() (gas: 22494)
[PASS] test_rescuable_shouldNotCauseInsolvency(uint256,uint256) (runs: 1000, μ: 782234, ~: 782239)
[PASS] test_rescuable_shouldRevertForInvalidCaller() (gas: 198818)
[PASS] test_rescuable_shouldTransferAssetsToCollector() (gas: 226775)
[PASS] test_rescuable_shouldWorkForAToken() (gas: 453656)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 3.52s (3.47s CPU time)
Ran 18 tests for tests/protocol/tokenization/VariableDebtToken.t.sol:VariableDebtTokenEventsTests
[PASS] test_balanceOf() (gas: 241853)
[PASS] test_cancel_delegationWithSig() (gas: 101800)
[PASS] test_delegationWithSig() (gas: 95276)
[PASS] test_initialize_VariableDebtToken((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2740458, ~: 2740967)
[PASS] test_mint_variableDebt_caller_alice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2814008, ~: 2813136)
[PASS] test_mint_variableDebt_caller_bob_onBehalf_alice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2827412, ~: 2827341)
[PASS] test_new_VariableDebtToken_implementation() (gas: 1572976)
[PASS] test_partial_burn_variableDebt((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2827284, ~: 2827456)
[PASS] test_reverts_bad_expiration_delegationWithSig() (gas: 34223)
[PASS] test_reverts_bad_nonce_delegationWithSig() (gas: 111067)
[PASS] test_reverts_initialize_pool_do_not_match((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2628194, ~: 2628327)
[PASS] test_reverts_initialize_twice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3678379, ~: 3678651)
[PASS] test_reverts_operation_not_supported() (gas: 1591579)
[PASS] test_reverts_zero_address_delegationWithSig() (gas: 33532)
[PASS] test_scaledBalanceOf() (gas: 321292)
[PASS] test_totalScaledSupply() (gas: 360001)
[PASS] test_totalSupply() (gas: 359930)
[PASS] test_total_burn_variableDebt((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2826757, ~: 2827365)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 6.63s (6.59s CPU time)
Ran 12 tests for tests/protocol/libraries/math/WadRayMath.t.sol:WadRayMathTests
[PASS] test_constants() (gas: 13279)
[PASS] test_rayDiv() (gas: 12752)
[PASS] test_rayMul() (gas: 11375)
[PASS] test_rayToWad() (gas: 11057)
[PASS] test_rayToWad_fuzz(uint256) (runs: 1000, μ: 13329, ~: 13278)
[PASS] test_wadDiv() (gas: 12873)
[PASS] test_wadDiv_fuzzing(uint256,uint256) (runs: 1000, μ: 10517, ~: 10723)
[PASS] test_wadMul() (gas: 11145)
[PASS] test_wadMul_edge() (gas: 11187)
[PASS] test_wadMul_fuzzing(uint256,uint256) (runs: 1000, μ: 10758, ~: 11341)
[PASS] test_wadToRay() (gas: 10867)
[PASS] test_wadToRay_fuzz(uint256) (runs: 1000, μ: 12097, ~: 12349)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 236.89ms (235.80ms CPU time)
Ran 14 tests for tests/helpers/WrappedTokenGateway.t.sol:WrappedTokenGatewayTests
[PASS] test_borrowDelegateApprove_repay() (gas: 475179)
[PASS] test_borrowVariableDebtWeth_repayWithEth() (gas: 810383)
[PASS] test_borrowVariableDebtWeth_repayWithEth_mismatchedValues() (gas: 806934)
[PASS] test_depositNativeEthInPool() (gas: 255609)
[PASS] test_fallback_revert() (gas: 10039)
[PASS] test_getWETHAddress() (gas: 10547)
[PASS] test_ownerCanRescueEth() (gas: 25250)
[PASS] test_ownerCanRescueTokens() (gas: 96925)
[PASS] test_sendEthFallback_revert() (gas: 16705)
[PASS] test_sendEth_revert() (gas: 16582)
[PASS] test_withdrawEth_full() (gas: 388868)
[PASS] test_withdrawEth_partial() (gas: 409840)
[PASS] test_withdrawEth_permit() (gas: 444212)
[PASS] test_withdrawEth_permit_full() (gas: 419516)
Suite result: ok. 14 passed; 0 failed; 0 skipped; finished in 40.41ms (11.50ms CPU time)
Ran 5 tests for tests/protocol/libraries/math/MathUtils.t.sol:MathUtilsTests
[PASS] test_calculateCompoundInterest_1() (gas: 10340)
[PASS] test_calculateCompoundInterest_2() (gas: 10337)
[PASS] test_calculateCompoundInterest_edge() (gas: 9166)
[PASS] test_calculateLinearInterest() (gas: 9211)
[PASS] test_constants() (gas: 8334)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 1.19ms (201.11µs CPU time)
Ran 22 tests for tests/extensions/paraswap-adapters/ParaswapAdapters.t.sol:ParaswapAdaptersTest
[PASS] test_batchClaimToCollector() (gas: 90031)
[PASS] test_batchGetClaimable() (gas: 49393)
[PASS] test_claimToCollector() (gas: 90683)
[PASS] test_getClaimable() (gas: 46510)
[PASS] test_getters() (gas: 13866)
[PASS] test_rescueTokens() (gas: 203426)
[PASS] test_reverts_offset_out_of_range_swap_liquidity_permit_flashloan() (gas: 752764)
[PASS] test_reverts_swapAndDeposit_offset() (gas: 824020)
[PASS] test_reverts_swapAndRepay_offset_out_of_range() (gas: 926401)
[PASS] test_reverts_withdrawAndSwap_offset_out_of_range() (gas: 803890)
[PASS] test_swapAndDeposit() (gas: 905847)
[PASS] test_swapAndDeposit_permit() (gas: 952890)
[PASS] test_swapAndRepay() (gas: 1006730)
[PASS] test_swapAndRepay_flashloan() (gas: 1098088)
[PASS] test_swapAndRepay_flashloan_permit() (gas: 1140712)
[PASS] test_swapAndRepay_no_collateral_leftovers() (gas: 1056270)
[PASS] test_swapAndRepay_permit() (gas: 1053619)
[PASS] test_swap_liquidity_flashloan() (gas: 1016737)
[PASS] test_swap_liquidity_permit_flashloan() (gas: 1059319)
[PASS] test_withdrawAndSwap() (gas: 822837)
[PASS] test_withdrawAndSwap_permit() (gas: 865996)
[PASS] test_withdrawSwapAdapter_reverts_flashloan() (gas: 533049)
Suite result: ok. 22 passed; 0 failed; 0 skipped; finished in 73.72ms (41.56ms CPU time)
Ran 5 tests for tests/protocol/libraries/math/PercentageMath.t.sol:PercentageMathTests
[PASS] test_constants() (gas: 10165)
[PASS] test_percentDiv() (gas: 11147)
[PASS] test_percentDiv_fuzz(uint256,uint256) (runs: 1000, μ: 10590, ~: 10678)
[PASS] test_percentMul() (gas: 11154)
[PASS] test_percentMul_fuzz(uint256,uint256) (runs: 1000, μ: 10608, ~: 11209)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 98.11ms (96.95ms CPU time)
Ran 18 tests for tests/protocol/pool/Pool.Borrow.t.sol:PoolBorrowTests
[PASS] test_borrow_variable_in_isolation() (gas: 565595)
[PASS] test_reverts_borrow_cap() (gas: 303661)
[PASS] test_reverts_borrow_collateral_balance_zero() (gas: 81579)
[PASS] test_reverts_borrow_collateral_can_not_cover() (gas: 315078)
[PASS] test_reverts_borrow_debt_ceiling() (gas: 654589)
[PASS] test_reverts_borrow_debt_ceiling_exceeded() (gas: 397611)
[PASS] test_reverts_borrow_hf_lt_1() (gas: 562764)
[PASS] test_reverts_borrow_inconsistent_emode_category() (gas: 429086)
[PASS] test_reverts_borrow_invalidAmount() (gas: 65058)
[PASS] test_reverts_borrow_not_borrowable_isolation() (gas: 379711)
[PASS] test_reverts_borrow_reserveFrozen() (gas: 132958)
[PASS] test_reverts_borrow_reserveInactive() (gas: 146102)
[PASS] test_reverts_borrow_reservePaused() (gas: 103659)
[PASS] test_reverts_borrow_sentinel_oracle_down() (gas: 315809)
[PASS] test_reverts_borrow_sioled_borrowing_violation() (gas: 715079)
[PASS] test_reverts_deprecated_stable_borrow() (gas: 406925)
[PASS] test_reverts_variable_borrow_transferred_funds() (gas: 381356)
[PASS] test_variable_borrow() (gas: 346448)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 46.52ms (15.18ms CPU time)
Ran 16 tests for tests/extensions/static-a-token/ERC20AaveLMUpgradable.t.sol:ERC20AaveLMUpgradableTest
[PASS] test_7201() (gas: 3358)
[PASS] test_claimRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 853334, ~: 814210)
[PASS] test_claimRewardsOnBehalfOf_self(uint256,uint32,uint88,uint32) (runs: 1000, μ: 855983, ~: 815106)
[PASS] test_claimRewardsOnBehalfOf_shouldRevertForInvalidClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 789137, ~: 790368)
[PASS] test_claimRewardsOnBehalfOf_validClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 885222, ~: 846822)
[PASS] test_claimRewardsToSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 851391, ~: 814123)
[PASS] test_claimableRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 789585, ~: 791205)
[PASS] test_collectAndUpdateRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 832195, ~: 810747)
[PASS] test_correctAccountingForDelayedRegistration() (gas: 839891)
[PASS] test_getReferenceAsset() (gas: 12908)
[PASS] test_isRegisteredRewardToken() (gas: 650723)
[PASS] test_noRewardsInitialized() (gas: 39241)
[PASS] test_noopWhenNotInitialized() (gas: 53159)
[PASS] test_rewardTokens() (gas: 648828)
[PASS] test_transfer(uint256,uint32,uint88,uint32,address,uint256) (runs: 1000, μ: 863674, ~: 881076)
[PASS] test_transfer_toSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 822273, ~: 815058)
Suite result: ok. 16 passed; 0 failed; 0 skipped; finished in 22.29s (22.26s CPU time)
Ran 11 tests for tests/protocol/pool/Pool.EMode.sol:PoolEModeTests
[PASS] test_borrowing_shouldRevert_ifNonBorrowableOutsideEmode(uint256) (runs: 1000, μ: 520434, ~: 520516)
[PASS] test_getUserAccountData_shouldReflectEmodeParams() (gas: 460141)
[PASS] test_getUserAccountData_shouldReflectMixedCollateral() (gas: 652905)
[PASS] test_getUserEMode_shouldReflectEMode() (gas: 197768)
[PASS] test_liquidations_shouldApplyEModeLBForEmodeAssets(uint256) (runs: 1000, μ: 1097493, ~: 1097571)
[PASS] test_reenterSameEmode_shouldSucceed() (gas: 207041)
[PASS] test_setUserEMode_shouldAllowSwitchingIfNoBorrows(uint8) (runs: 1000, μ: 292362, ~: 295921)
[PASS] test_setUserEMode_shouldRevertForNonExistingEmode() (gas: 35013)
[PASS] test_setUserEmode_shouldAllowSwitchingWhenAssetIsBorrowableInEmode(uint104) (runs: 1000, μ: 1010629, ~: 1010836)
[PASS] test_setUserEmode_shouldRevertIfAssetNoLongerBorrowable(uint104) (runs: 1000, μ: 914614, ~: 914823)
[PASS] test_setUserEmode_shouldRevertIfHfWouldFallBelow1(uint104) (runs: 1000, μ: 969850, ~: 970060)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 12.22s (12.19s CPU time)
Ran 17 tests for tests/protocol/pool/Pool.FlashLoans.t.sol:PoolFlashLoansTests
[PASS] test_flashloan() (gas: 216054)
[PASS] test_flashloan_borrow() (gas: 529110)
[PASS] test_flashloan_multiple() (gas: 329244)
[PASS] test_flashloan_simple() (gas: 180097)
[PASS] test_flashloan_simple_2() (gas: 180097)
[PASS] test_revert_flashloan_borrow_stable() (gas: 212771)
[PASS] test_reverts_flashLoan_invalid_return() (gas: 183626)
[PASS] test_reverts_flashLoan_reserve_inactive() (gas: 152824)
[PASS] test_reverts_flashLoan_reserve_not_flash_loan_enabled() (gas: 105545)
[PASS] test_reverts_flashLoan_reserve_paused() (gas: 102296)
[PASS] test_reverts_flashLoan_same_asset_more_then_once(uint8) (runs: 1000, μ: 178358, ~: 139083)
[PASS] test_reverts_flashLoan_simple_invalid_return() (gas: 144646)
[PASS] test_reverts_flashloan_simple_transferred_funds() (gas: 174981)
[PASS] test_reverts_flashloan_transferred_funds() (gas: 205331)
[PASS] test_reverts_flashloans_eoa() (gas: 113203)
[PASS] test_reverts_supply_flashloan_simple_transfer_withdraw() (gas: 854285)
[PASS] test_reverts_supply_flashloan_transfer_withdraw() (gas: 886846)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 1.34s (1.31s CPU time)
Ran 28 tests for tests/extensions/static-a-token/ERC4626StataTokenUpgradeable.t.sol:ERC4626StataTokenUpgradeableTest
[PASS] test_7201() (gas: 3425)
[PASS] test_convertersAndPreviews(uint128) (runs: 1000, μ: 43213, ~: 43213)
[PASS] test_depositATokens(uint128,address) (runs: 1000, μ: 527617, ~: 527553)
[PASS] test_depositATokens_self() (gas: 527558)
Logs:
Bound result 1000000000000000000
[PASS] test_depositWithPermit_aToken(uint128,address) (runs: 1000, μ: 556502, ~: 556435)
[PASS] test_depositWithPermit_emptyPermit_aToken_preApproval(uint128,address) (runs: 1000, μ: 533875, ~: 533796)
[PASS] test_depositWithPermit_emptyPermit_underlying_preApproval(uint128,address) (runs: 1000, μ: 469429, ~: 469360)
[PASS] test_depositWithPermit_shouldRevert_emptyPermit_noPreApproval(uint128) (runs: 1000, μ: 398208, ~: 398126)
[PASS] test_depositWithPermit_underlying(uint128,address) (runs: 1000, μ: 487747, ~: 487680)
[PASS] test_deposit_shouldRevert_insufficientAllowance(uint128) (runs: 1000, μ: 388991, ~: 388893)
[PASS] test_latestAnswer_priceShouldBeEqualOnDefaultIndex() (gas: 37200)
[PASS] test_latestAnswer_priceShouldReflectIndexAccrual(uint256) (runs: 1000, μ: 42126, ~: 42146)
[PASS] test_maxDeposit_cap(uint256) (runs: 1000, μ: 111955, ~: 112273)
[PASS] test_maxDeposit_freeze() (gas: 118665)
[PASS] test_maxDeposit_noCap() (gas: 99950)
[PASS] test_maxDeposit_paused() (gas: 91873)
[PASS] test_maxRedeem_inSufficientAvailableLiquidity(uint256) (runs: 1000, μ: 987214, ~: 987336)
[PASS] test_maxRedeem_paused(uint128) (runs: 1000, μ: 552531, ~: 552431)
[PASS] test_maxRedeem_sufficientAvailableLiquidity(uint128) (runs: 1000, μ: 522552, ~: 522463)
[PASS] test_mint(uint256,address) (runs: 1000, μ: 461779, ~: 461623)
[PASS] test_mint_shouldRevert_mintMoreThenBalance(uint256,address) (runs: 1000, μ: 252653, ~: 252496)
[PASS] test_redeem(uint256,address) (runs: 1000, μ: 582301, ~: 582148)
[PASS] test_redeemATokens(uint256,address) (runs: 1000, μ: 589379, ~: 589218)
[PASS] test_redeemATokens_onBehalf(uint256) (runs: 1000, μ: 609931, ~: 609744)
[PASS] test_redeemATokens_onBehalf_shouldRevert_insufficientAllowance(uint256,uint256) (runs: 1000, μ: 541407, ~: 542103)
[PASS] test_totalAssets_shouldbeZeroOnZeroSupply() (gas: 26068)
[PASS] test_withdraw(uint256,address) (runs: 1000, μ: 586041, ~: 585875)
[PASS] test_withdraw_shouldRevert_moreThenAvailable(uint256,address) (runs: 1000, μ: 526750, ~: 526579)
Suite result: ok. 28 passed; 0 failed; 0 skipped; finished in 30.62s (30.59s CPU time)
Ran 9 tests for tests/rewards/EmissionsManager.t.sol:EmissionManagerTest
[PASS] test_configureAssets() (gas: 598370)
[PASS] test_new_EmissionManager() (gas: 758986)
[PASS] test_setClaimer() (gas: 51471)
[PASS] test_setDistributionEnd() (gas: 605645)
[PASS] test_setEmissionAdmin() (gas: 43012)
[PASS] test_setEmissionPerSecond() (gas: 612253)
[PASS] test_setRewardOracle() (gas: 687386)
[PASS] test_setRewardsController() (gas: 19086)
[PASS] test_setTransferStrategy() (gas: 888948)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 37.62ms (2.10ms CPU time)
Ran 6 tests for tests/misc/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.t.sol:InitializableImmutableAdminUpgradeabilityProxyTests
[PASS] test_proxy_fallback() (gas: 597827)
[PASS] test_proxy_upgradeTo() (gas: 619698)
[PASS] test_proxy_upgradeToAndCall() (gas: 625582)
[PASS] test_proxy_upgradeToAndCall_initialize() (gas: 594923)
[PASS] test_reverts_upgradeToAndCall_notAdmin() (gas: 600810)
[PASS] test_reverts_upgradeTo_notAdmin() (gas: 598616)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 3.23ms (1.93ms CPU time)
Ran 20 tests for tests/protocol/pool/Pool.Liquidations.t.sol:PoolLiquidationTests
[PASS] test_full_liquidate_atokens_multiple_variable_borrows() (gas: 1337326)
[PASS] test_full_liquidate_multiple_supplies_and_variable_borrows() (gas: 1540059)
[PASS] test_full_liquidate_multiple_variable_borrows() (gas: 1397568)
[PASS] test_liquidate_emode_position_without_emode_oracle() (gas: 1419103)
[PASS] test_liquidate_isolated_position() (gas: 1323438)
[PASS] test_liquidate_variable_borrow() (gas: 1434400)
[PASS] test_liquidate_variable_borrow_no_fee() (gas: 1159266)
[PASS] test_liquidate_variable_borrow_same_collateral_and_borrow() (gas: 1097450)
[PASS] test_liquidation_when_grace_period_disabled(uint40) (runs: 1000, μ: 1266339, ~: 1266339)
[PASS] test_liquidation_with_liquidation_grace_period_collateral_active(uint40) (runs: 1000, μ: 1457173, ~: 1464748)
[PASS] test_liquidation_with_liquidation_grace_period_debt_active(uint40) (runs: 1000, μ: 1452938, ~: 1462643)
[PASS] test_liquidation_with_liquidation_grace_period_debt_collateral_active(uint40) (runs: 1000, μ: 1470552, ~: 1479631)
[PASS] test_partial_liquidate_atokens_variable_borrow() (gas: 1271526)
[PASS] test_partial_liquidate_variable_borrow() (gas: 1220442)
[PASS] test_reverts_liquidation_collateral_not_active() (gas: 624158)
[PASS] test_reverts_liquidation_hf_gt_liquidation_threshold() (gas: 459000)
[PASS] test_reverts_liquidation_invalid_borrow() (gas: 598661)
[PASS] test_reverts_liquidation_oracle_sentinel_on() (gas: 319337)
[PASS] test_reverts_liquidation_reserveInactive() (gas: 155983)
[PASS] test_reverts_liquidation_reservePaused() (gas: 113797)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 20.09s (20.05s CPU time)
Ran 47 tests for tests/protocol/pool/L2Pool.t.sol:L2PoolTests
[PASS] test_dropReserve() (gas: 104743)
[PASS] test_getBorrowLogic() (gas: 13620)
[PASS] test_getBridgeLogic() (gas: 13684)
[PASS] test_getEModeLogic() (gas: 13686)
[PASS] test_getFlashLoanLogic() (gas: 13685)
[PASS] test_getLiquidationLogic() (gas: 13707)
[PASS] test_getPoolLogic() (gas: 13684)
[PASS] test_getSupplyLogic() (gas: 13705)
[PASS] test_getVirtualUnderlyingBalance() (gas: 250496)
[PASS] test_getters_getUserAccountData() (gas: 598198)
[PASS] test_l2_borrow() (gas: 431277)
[PASS] test_l2_liquidationCall() (gas: 1116650)
[PASS] test_l2_partial_withdraw() (gas: 306825)
[PASS] test_l2_repay() (gas: 459607)
[PASS] test_l2_repay_atokens() (gas: 466738)
[PASS] test_l2_repay_permit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 638904, ~: 649784)
[PASS] test_l2_set_user_collateral() (gas: 264454)
[PASS] test_l2_supply() (gas: 248027)
[PASS] test_l2_supply_permit(uint128,uint128) (runs: 1000, μ: 424175, ~: 424174)
[PASS] test_l2_withdraw() (gas: 242852)
[PASS] test_mintToTreasury() (gas: 696698)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 701324)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 290883)
[PASS] test_pool_defaultValues() (gas: 4456250)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81890, ~: 82191)
[PASS] test_resetIsolationModeTotalDebt() (gas: 728596)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 25537, ~: 25537)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 127785, ~: 127785)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4468431)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_AssetNotListed(address,address) (runs: 1000, μ: 40728, ~: 40728)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_ZeroAssetAddress(address) (runs: 1000, μ: 22733, ~: 22733)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 978126)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 600219)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 299000)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 222933)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 293845)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 71847)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 785901)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 36796, ~: 36903)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 27115, ~: 27115)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 901344)
[PASS] test_setUserEmode() (gas: 228493)
[PASS] test_setUserEmode_twice() (gas: 370991)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 978750)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 240399)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 277962)
[PASS] test_updateBridgeProtocolFee() (gas: 187)
Suite result: ok. 47 passed; 0 failed; 0 skipped; finished in 6.71s (7.01s CPU time)
Ran 15 tests for tests/protocol/pool/Pool.Repay.t.sol:PoolRepayTests
[PASS] test_full_repay_borrow_variable_in_isolation() (gas: 584810)
[PASS] test_partial_repay_borrow_variable_in_isolation() (gas: 636784)
[PASS] test_repayWithATokens_full_collateral_variable_borrow() (gas: 615675)
[PASS] test_repayWithATokens_full_variable_borrow() (gas: 414364)
[PASS] test_repayWithATokens_fuzz_collateral_variable_borrow(uint256,uint32) (runs: 1000, μ: 602529, ~: 603805)
[PASS] test_repayWithPermit(uint128,uint120,uint120,uint120,uint120) (runs: 1000, μ: 581895, ~: 573379)
[PASS] test_repayWithPermit_not_failing_if_permit_was_used(uint128,uint120,uint120,uint120,uint120) (runs: 1000, μ: 586628, ~: 578889)
[PASS] test_repayWithPermit_should_revert_if_permit_is_less_then_repay_amount(uint128,uint120,uint120,uint120,uint120) (runs: 1000, μ: 535973, ~: 526869)
[PASS] test_repay_full_variable_borrow() (gas: 401501)
[PASS] test_revert_repay_full_stable_borrow() (gas: 353370)
[PASS] test_reverts_borrow_invalidAmount() (gas: 51687)
[PASS] test_reverts_borrow_reserveInactive() (gas: 134855)
[PASS] test_reverts_borrow_reservePaused() (gas: 92515)
[PASS] test_reverts_no_explicit_repay_on_behalf() (gas: 327464)
[PASS] test_reverts_repay_no_debt() (gas: 52259)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 8.67s (12.63s CPU time)
Ran 4 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.initReserves.t.sol:PoolConfiguratorInitReservesTest
[PASS] test_initReserves_notEnoughDecimal((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 1054326, ~: 1054324)
[PASS] test_initReserves_validNumberOfAssets((uint8,string,string,string,string,address,address,address,bool)[128],uint8) (runs: 1000, μ: 86187218, ~: 45665332)
[PASS] test_initReserves_zeroAssets() (gas: 62496)
[PASS] test_reverts_initReserves_maxAssets((uint8,string,string,string,string,address,address,address,bool),uint8) (runs: 1000, μ: 387635589, ~: 353554935)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 132.37s (174.60s CPU time)
Ran 60 test suites in 132.38s (328.28s CPU time): 741 tests passed, 0 failed, 0 skipped (741 total tests) |
sakulstra
added a commit
to bgd-labs/aave-v3-origin
that referenced
this pull request
Dec 10, 2024
Tracking of reserve deficit and instant removal of bad debt. This newly introduced feature allows the removal of excess debt. When a users collateral if fully liquidated but debt is left in the protocol, the debt generates yield although it is expected to never be payed back. With the reserve deficit tracking, this debt is immediately burned and tracked in a local state. In addition a new method is introduced which allows burning aTokens in order the resolve the realized debt. --------- Co-authored-by: Lukas <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.