Skip to content

chore: megaETH instance code diff#7

Open
brotherlymite wants to merge 1 commit intomainfrom
diff/megaeth
Open

chore: megaETH instance code diff#7
brotherlymite wants to merge 1 commit intomainfrom
diff/megaeth

Conversation

@brotherlymite
Copy link

Code diffs between aave v3.6 megaETH instance and v3.6 sonic instance.

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

Certora Run Started (Certora Prover Run)

  • Group ID: 6ab3fd91-7325-42e5-8087-b547c70cb984
Config Status Link Log File
token-v3-delegate-HL-rules.conf --rule no_function_changes_both_balance_and_delegation_state Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-HL-rules.conf-d6e3865e4589.log
token-v3-delegate-HL-rules.conf --rule pp_change_in_balance_affect_power_DELEGATEE Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-HL-rules.conf-6b255e1c54e1.log
token-v3-delegate-HL-rules.conf --rule pp_change_of_balance_affect_power_NON_DELEGATEE Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-HL-rules.conf-eefe3fe4e4c1.log
token-v3-delegate-HL-rules.conf --rule vp_change_in_balance_affect_power_DELEGATEE Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-HL-rules.conf-2124ce7bcc36.log
token-v3-delegate-HL-rules.conf --rule vp_change_of_balance_affect_power_NON_DELEGATEE Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-HL-rules.conf-83903f6d32d3.log
token-v3-delegate-basic.conf Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-basic.conf-66d107cf5052.log
token-v3-delegate-invariants.conf --exclude_rule mirror_votingDelegatee_correct mirror_propositionDelegatee_correct mirror_delegationMode_correct mirror_balance_correct Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-invariants.conf-c27903310823.log
token-v3-delegate-invariants.conf --rule mirror_votingDelegatee_correct mirror_propositionDelegatee_correct mirror_delegationMode_correct mirror_balance_correct --rule_sanity "none" Compiled - certora/atoken-with-delegation/conf/token-v3-delegate-invariants.conf-a58c39dc000b.log
token-v3-erc20.conf Compiled - certora/atoken-with-delegation/conf/token-v3-erc20.conf-91bdfeddd36e.log
token-v3-general.conf Compiled - certora/atoken-with-delegation/conf/token-v3-general.conf-97a08711ff25.log

Certora Run Summary

  • Started 10 jobs
  • 0 jobs failed

Download Logs

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

Certora Run Started (Certora Prover Run)

  • Group ID: 2820cf7f-0eea-4fa3-a3f8-c7c81abcf519
Config Status Link Log File
gift_cannot_decrease_healthFactor.conf Compiled - certora/math-calculations/confs/gift_cannot_decrease_healthFactor.conf-41839b697d81.log
rayMulDiv-CVL-check.conf Compiled - certora/math-calculations/confs/rayMulDiv-CVL-check.conf-ce80df1c614d.log

Certora Run Summary

  • Started 2 jobs
  • 0 jobs failed

Download Logs

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

Certora Run Started (Certora Prover Run)

  • Group ID: b01308f0-eff9-4374-b1d2-7a57b43b8940
Config Status Link Log File
aToken-check.conf Compiled - certora/solvency/confs/aToken-check.conf-eec543c3646e.log
rayMulDiv-CVL-check.conf Compiled - certora/solvency/confs/rayMulDiv-CVL-check.conf-4bcbcf287976.log
solvency/borrow.conf Compiled - certora/solvency/confs/solvency/borrow.conf-cf63800d1cc6.log
solvency/flashloan.conf Compiled - certora/solvency/confs/solvency/flashloan.conf-b4ecd701b2e0.log
solvency/liquidationCall/burnBadDebt-assetINloop.conf Compiled - certora/solvency/confs/solvency/liquidationCall/burnBadDebt-assetINloop.conf-b45575904b65.log
solvency/liquidationCall/burnBadDebt-assetNOTINloop.conf Compiled - certora/solvency/confs/solvency/liquidationCall/burnBadDebt-assetNOTINloop.conf-787f92f038c9.log
solvency/liquidationCall/lemma-COLasset-totSUP0.conf Compiled - certora/solvency/confs/solvency/liquidationCall/lemma-COLasset-totSUP0.conf-abe71be6ccf0.log
solvency/liquidationCall/lemma-COLasset.conf --rule_sanity "none" Compiled - certora/solvency/confs/solvency/liquidationCall/lemma-COLasset.conf-ca0e3ee761e7.log
solvency/liquidationCall/lemma-DBTasset.conf Compiled - certora/solvency/confs/solvency/liquidationCall/lemma-DBTasset.conf-6e782a565c74.log
solvency/liquidationCall/lemma-SAMEasset.conf Compiled - certora/solvency/confs/solvency/liquidationCall/lemma-SAMEasset.conf-b6d382442752.log
solvency/liquidationCall/lemma-revertsIF_totDbt_of_DBTasset_is0.conf Compiled - certora/solvency/confs/solvency/liquidationCall/lemma-revertsIF_totDbt_of_DBTasset_is0.conf-a2ec818031b6.log
solvency/liquidationCall/main-COLasset-totSUP0.conf --rule_sanity "none" Compiled - certora/solvency/confs/solvency/liquidationCall/main-COLasset-totSUP0.conf-12d06333c0b1.log
solvency/liquidationCall/main-COLasset.conf Compiled - certora/solvency/confs/solvency/liquidationCall/main-COLasset.conf-ae45bca28c04.log
solvency/liquidationCall/main-DBTasset.conf Compiled - certora/solvency/confs/solvency/liquidationCall/main-DBTasset.conf-be218282cee3.log
solvency/liquidationCall/main-SAMEasset.conf Compiled - certora/solvency/confs/solvency/liquidationCall/main-SAMEasset.conf-f672f1a545d3.log
solvency/repay-lemma.conf Compiled - certora/solvency/confs/solvency/repay-lemma.conf-c281f0b7726b.log
solvency/repay-main.conf Compiled - certora/solvency/confs/solvency/repay-main.conf-db6fb64797ba.log
solvency/repayWithATokens-lemma.conf Compiled - certora/solvency/confs/solvency/repayWithATokens-lemma.conf-453e5e6bfc3a.log
solvency/repayWithATokens-main.conf --rule_sanity "none" Compiled - certora/solvency/confs/solvency/repayWithATokens-main.conf-f2f1b800845d.log
solvency/supply.conf Compiled - certora/solvency/confs/solvency/supply.conf-c17f511c6642.log
solvency/withdraw.conf Compiled - certora/solvency/confs/solvency/withdraw.conf-f2bc13b418e5.log
variableDebtToken-check.conf Compiled - certora/solvency/confs/variableDebtToken-check.conf-1e5f8a17f875.log

Certora Run Summary

  • Started 22 jobs
  • 0 jobs failed

Download Logs

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

Certora Run Started (Certora Prover Run)

  • Group ID: ce71b728-a534-4c54-9214-69b779934e27
Config Status Link Log File
AToken.conf Compiled - certora/basic/conf/AToken.conf-2be466d06f00.log
EModeConfiguration.conf Compiled - certora/basic/conf/EModeConfiguration.conf-c1cc4e72e2e1.log
NEW-pool-no-summarizations.conf Compiled - certora/basic/conf/NEW-pool-no-summarizations.conf-9d705ff25578.log
NEW-pool-simple-properties.conf --rule cannotDepositInFrozenReserve Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-391a3984a122.log
NEW-pool-simple-properties.conf --rule cannotDepositInInactiveReserve Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-8328f8dc0b26.log
NEW-pool-simple-properties.conf --rule cannotDepositZeroAmount Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-c9bf8048b28a.log
NEW-pool-simple-properties.conf --rule cannotWithdrawFromInactiveReserve Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-a053f8bce255.log
NEW-pool-simple-properties.conf --rule cannotWithdrawZeroAmount Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-10d93290093b.log
NEW-pool-simple-properties.conf --rule_sanity none --rule cannotBorrowOnFrozenReserve Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-1bd0f895dcc8.log
NEW-pool-simple-properties.conf --rule_sanity none --rule cannotBorrowOnInactiveReserve Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-7255209ef7f4.log
NEW-pool-simple-properties.conf --rule_sanity none --rule cannotBorrowZeroAmount Compiled - certora/basic/conf/NEW-pool-simple-properties.conf-c1079b010bab.log
ReserveConfiguration.conf Compiled - certora/basic/conf/ReserveConfiguration.conf-0c89d57f59b8.log
UserConfiguration.conf Compiled - certora/basic/conf/UserConfiguration.conf-f77ba8439a9c.log
VariableDebtToken.conf Compiled - certora/basic/conf/VariableDebtToken.conf-765eff6c92b1.log
stableRemoved.conf Compiled - certora/basic/conf/stableRemoved.conf-bf8468af134a.log

Certora Run Summary

  • Started 15 jobs
  • 0 jobs failed

Download Logs

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

Certora Run Started (Certora Prover Run)

  • Group ID: 0795207f-8990-4a6e-bab3-77fd8f1858ec
Config Status Link Log File
verifyAToken.conf --rule aTokenBalanceIsFixed_for_claimSingleRewardOnBehalf aTokenBalanceIsFixed_for_claimRewardsToSelf Compiled - certora/stata/conf/verifyAToken.conf-03ab808e1f15.log
verifyAToken.conf --rule aTokenBalanceIsFixed_for_collectAndUpdateRewards aTokenBalanceIsFixed_for_claimRewards aTokenBalanceIsFixed_for_claimRewardsOnBehalf Compiled - certora/stata/conf/verifyAToken.conf-ad9489574bda.log
verifyDoubleClaim.conf --rule prevent_duplicate_reward_claiming_single_reward_insufficient Compiled - certora/stata/conf/verifyDoubleClaim.conf-b6fb981d972a.log
verifyDoubleClaim.conf --rule prevent_duplicate_reward_claiming_single_reward_sufficient Compiled - certora/stata/conf/verifyDoubleClaim.conf-ff6d704ac672.log
verifyERC4626.conf --rule maxMintMustntRevert maxDepositMustntRevert maxRedeemMustntRevert maxWithdrawMustntRevert totalAssetsMustntRevert Compiled - certora/stata/conf/verifyERC4626.conf-564e9d68bb3f.log
verifyERC4626.conf --rule previewRedeemIndependentOfBalance previewMintAmountCheck previewDepositIndependentOfAllowanceApprove previewWithdrawAmountCheck previewWithdrawIndependentOfBalance2 previewWithdrawIndependentOfBalance1 previewRedeemIndependentOfMaxRedeem1 previewRedeemAmountCheck previewRedeemIndependentOfMaxRedeem2 amountConversionRoundedDown withdrawCheck redeemCheck redeemATokensCheck convertToAssetsCheck convertToSharesCheck toAssetsDoesNotRevert sharesConversionRoundedDown toSharesDoesNotRevert previewDepositAmountCheck maxRedeemCompliance maxWithdrawConversionCompliance previewMintIndependentOfAllowance Compiled - certora/stata/conf/verifyERC4626.conf-0729ca0e09bc.log
verifyERC4626DepositSummarization.conf --rule depositCheckIndexGRayAssert1 depositATokensCheckIndexGRayAssert1 depositWithPermitCheckIndexGRayAssert1 depositCheckIndexERayAssert1 depositATokensCheckIndexERayAssert1 depositWithPermitCheckIndexERayAssert1 Compiled - certora/stata/conf/verifyERC4626DepositSummarization.conf-07a30d96bc49.log
verifyERC4626Extended.conf --rule previewWithdrawRoundingRange previewRedeemRoundingRange amountConversionPreserved sharesConversionPreserved accountsJoiningSplittingIsLimited convertSumOfAssetsPreserved previewDepositSameAsDeposit previewMintSameAsMint maxDepositConstant Compiled - certora/stata/conf/verifyERC4626Extended.conf-d048acb3d930.log
verifyERC4626Extended.conf --rule redeemATokensSum Compiled - certora/stata/conf/verifyERC4626Extended.conf-03b6565a9e33.log
verifyERC4626Extended.conf --rule redeemSum Compiled - certora/stata/conf/verifyERC4626Extended.conf-37545df20623.log
verifyERC4626MintDepositSummarization.conf --rule depositCheckIndexGRayAssert2 depositATokensCheckIndexGRayAssert2 depositWithPermitCheckIndexGRayAssert2 depositCheckIndexERayAssert2 depositATokensCheckIndexERayAssert2 depositWithPermitCheckIndexERayAssert2 mintCheckIndexGRayUpperBound mintCheckIndexGRayLowerBound mintCheckIndexEqualsRay Compiled - certora/stata/conf/verifyERC4626MintDepositSummarization.conf-be782a3844c4.log
verifyStataToken.conf --rule getClaimableRewardsBefore_leq_claimed_claimRewardsOnBehalf Compiled - certora/stata/conf/verifyStataToken.conf-dca004a2c646.log
verifyStataToken.conf --rule getClaimableRewards_stable Compiled - certora/stata/conf/verifyStataToken.conf-eed14213f806.log
verifyStataToken.conf --rule getClaimableRewards_stable_after_deposit Compiled - certora/stata/conf/verifyStataToken.conf-6337f4104f42.log
verifyStataToken.conf --rule getClaimableRewards_stable_after_refreshRewardTokens Compiled - certora/stata/conf/verifyStataToken.conf-9fc0e26e4ed3.log
verifyStataToken.conf --rule rewardsConsistencyWhenInsufficientRewards Compiled - certora/stata/conf/verifyStataToken.conf-d2bd891cbdb5.log
verifyStataToken.conf --rule rewardsConsistencyWhenSufficientRewardsExist Compiled - certora/stata/conf/verifyStataToken.conf-16f57e462a64.log
verifyStataToken.conf --rule rewardsTotalDeclinesOnlyByClaim Compiled - certora/stata/conf/verifyStataToken.conf-f1e24dea6720.log
verifyStataToken.conf --rule singleAssetAccruedRewards Compiled - certora/stata/conf/verifyStataToken.conf-33fb81bcf82e.log
verifyStataToken.conf --rule solvency_positive_total_supply_only_if_positive_asset Compiled - certora/stata/conf/verifyStataToken.conf-4b5c40bf68f6.log
verifyStataToken.conf --rule solvency_total_asset_geq_total_supply Compiled - certora/stata/conf/verifyStataToken.conf-73950252fffd.log
verifyStataToken.conf --rule totalAssets_stable Compiled - certora/stata/conf/verifyStataToken.conf-9687ac16022f.log
verifyStataToken.conf --rule totalClaimableRewards_stable Compiled - certora/stata/conf/verifyStataToken.conf-b0fd66d9e978.log

Certora Run Summary

  • Started 23 jobs
  • 0 jobs failed

Download Logs

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

♻️ Forge Gas Snapshots

🔕 Unchanged
Path Value
snapshots/AToken.transfer.json
full amount; receiver: ->enableCollateral 113,749
full amount; receiver: ->enableCollateral; transferFrom 123,060
full amount; sender: ->disableCollateral; 96,766
full amount; sender: ->disableCollateral; receiver: ->enableCollateral 113,866
full amount; sender: ->disableCollateral; receiver: ->enableCollateral; transferFrom 123,177
full amount; sender: ->disableCollateral; receiver: dirty, ->enableCollateral 113,866
full amount; sender: ->disableCollateral; receiver: dirty, ->enableCollateral; transferFrom 123,177
full amount; sender: ->disableCollateral; transferFrom 106,077
full amount; sender: collateralDisabled 96,649
full amount; sender: collateralDisabled; transferFrom 105,960
partial amount; sender: collateralDisabled; 96,625
partial amount; sender: collateralDisabled; receiver: ->enableCollateral 113,725
partial amount; sender: collateralDisabled; receiver: ->enableCollateral; transferFrom 118,236
partial amount; sender: collateralDisabled; transferFrom 101,136
partial amount; sender: collateralEnabled; 96,833
partial amount; sender: collateralEnabled; receiver: ->enableCollateral 113,933
partial amount; sender: collateralEnabled; receiver: ->enableCollateral; transferFrom 118,444
partial amount; sender: collateralEnabled; transferFrom 101,344
snapshots/ATokenWithDelegation.transfer.json
full amount; sender: with delegations, ->disableCollateral; receiver: without delegations, ->enableCollateral 133,137
full amount; sender: with delegations, delegatee, ->disableCollateral; receiver: with delegations, delegatee, ->enableCollateral 129,075
full amount; sender: with delegations, not delegatee, ->disableCollateral; receiver: with delegations, not delegatee, ->enableCollateral 129,075
full amount; sender: without delegations, ->disableCollateral; receiver: with delegations, ->enableCollateral 116,037
full amount; sender: without delegations, delegatee, ->disableCollateral; receiver: without delegations, delegatee, ->enableCollateral 120,100
full amount; sender: without delegations, not delegatee, ->disableCollateral; receiver: without delegations, not delegatee, ->enableCollateral 120,100
snapshots/Pool.Getters.json
getEModeCategoryCollateralConfig 8,001
getEModeCategoryData 11,054
getLiquidationGracePeriod 7,759
getReserveData 29,730
getUserAccountData: supplies: 0, borrows: 0 20,383
getUserAccountData: supplies: 0, borrows: 0 with eMode enabled 20,383
getUserAccountData: supplies: 1, borrows: 0 55,292
getUserAccountData: supplies: 1, borrows: 0 with eMode enabled 60,593
getUserAccountData: supplies: 2, borrows: 0 84,512
getUserAccountData: supplies: 2, borrows: 0 with eMode enabled 90,667
getUserAccountData: supplies: 2, borrows: 1 115,201
getUserAccountData: supplies: 2, borrows: 1 with eMode enabled 121,357
snapshots/Pool.Operations.json
borrow: first borrow->borrowingEnabled 250,206
borrow: first borrow->borrowingEnabled; onBehalfOf 256,476
borrow: recurrent borrow 215,123
borrow: recurrent borrow; onBehalfOf 216,605
flashLoan: flash loan for one asset 162,244
flashLoan: flash loan for one asset and borrow 267,567
flashLoan: flash loan for two assets 257,198
flashLoan: flash loan for two assets and borrow 462,702
flashLoanSimple: simple flash loan 138,142
liquidationCall: deficit on liquidated asset 352,245
liquidationCall: deficit on liquidated asset + other asset 437,870
liquidationCall: full liquidation 352,245
liquidationCall: full liquidation and receive ATokens 323,283
liquidationCall: partial liquidation 343,150
liquidationCall: partial liquidation and receive ATokens 314,188
mintToTreasury: one asset with non zero amount 100,355
mintToTreasury: one asset with zero amount 35,781
mintToTreasury: two assets with non zero amount 160,659
mintToTreasury: two assets with zero amount 41,020
repay: full repay 161,792
repay: full repay with ATokens 163,619
repay: partial repay 158,144
repay: partial repay with ATokens 178,178
supply: collateralDisabled 141,657
supply: collateralEnabled 141,657
supply: first supply->collateralEnabled 171,574
withdraw: full withdraw 155,362
withdraw: partial withdraw 172,118
withdraw: partial withdraw with active borrows 220,715
snapshots/Pool.OperationsComposition.json
batchLiquidate: liquidate 2 users 486,045
repayAndWithdraw: borrow disabled, collateral disabled 290,193
supplyAndBorrow: first supply->collateralEnabled, first borrow 378,449
snapshots/Pool.Setters.json
setUserEMode: enter eMode, 1 borrow, 1 supply 137,560
setUserEMode: leave eMode, 1 borrow, 1 supply 109,680
setUserEModeOnBehalfOf: enter eMode, 1 borrow, 1 supply 140,361
setUserEModeOnBehalfOf: leave eMode, 1 borrow, 1 supply 112,481
setUserUseReserveAsCollateral: disableCollateral, 1 supply 46,344
setUserUseReserveAsCollateral: enableCollateral, 1 supply 81,062
setUserUseReserveAsCollateralOnBehalfOf: disableCollateral, 1 supply 49,223
setUserUseReserveAsCollateralOnBehalfOf: enableCollateral, 1 supply 83,941
snapshots/ProtocolDataProvider.json
getATokenTotalSupply 29,990
getAllATokens 63,750
getAllReservesTokens 43,116
getFlashLoanEnabled 11,281
getInterestRateStrategyAddress 8,855
getIsVirtualAccActive 463
getLiquidationProtocolFee 11,308
getPaused 11,397
getReserveCaps 11,318
getReserveConfigurationData 11,754
getReserveDeficit 11,017
getReserveTokensAddresses 14,933
getSiloedBorrowing 11,334
getTotalDebt 29,990
getUnbackedMintCap 413
getUserReserveData 70,439
getVirtualUnderlyingBalance 11,188
snapshots/StataTokenV2.json
claimRewards 359,625
deposit 277,676
depositATokens 194,310
redeem 197,017
redeemAToken 121,660
snapshots/WrappedTokenGatewayV3.json
borrowETH 233,444
depositETH 197,958
repayETH 179,306
withdrawETH 237,334

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

Forge Build Sizes

🔕 Unchanged
Contract Runtime Size (B) Initcode Size (B) Runtime Margin (B) Initcode Margin (B)
ACLManager 3,493 3,971 21,083 45,181
ATokenHandler 17,491 18,211 7,085 30,941
ATokenInstance 10,498 11,598 14,078 37,554
ATokenMock 803 961 23,773 48,191
ATokenWithDelegationInstance 14,142 15,248 10,434 33,904
ATokenWithDelegationInstanceNext (tests/gas/ATokenWithDelegation.Transfer.gas.t.sol) 14,164 15,326 10,412 33,826
ATokenWithDelegationInstanceNext (tests/protocol/tokenization/ATokenDelegation.t.sol) 14,164 15,326 10,412 33,826
ATokenWithDelegationInstanceNext (tests/protocol/tokenization/ATokenWithDelegationRounding.t.sol) 14,164 15,326 10,412 33,826
AaveOracle 2,466 3,462 22,110 45,690
AaveProtocolDataProvider 7,435 7,893 17,141 41,259
AaveSetters 44 94 24,532 49,058
AaveV3BatchOrchestration 44 94 24,532 49,058
AaveV3ConfigEngine 7,831 9,360 16,745 39,792
AaveV3DefaultRateStrategyProcedure 21 47 24,555 49,105
AaveV3GettersBatchOne 189 22,720 24,387 26,432
AaveV3GettersBatchTwo 189 18,744 24,387 30,408
AaveV3GettersProcedureOne 21 47 24,555 49,105
AaveV3GettersProcedureTwo 21 47 24,555 49,105
AaveV3HelpersBatchOne 353 37,051 24,223 12,101
AaveV3HelpersBatchTwo 229 30,885 24,347 18,267
AaveV3HelpersProcedureOne 21 47 24,555 49,105
AaveV3HelpersProcedureTwo 21 47 24,555 49,105
AaveV3IncentiveProcedure 21 47 24,555 49,105
AaveV3L2PoolBatch 137 42,934 24,439 6,218
AaveV3L2PoolProcedure 21 47 24,555 49,105
AaveV3LibrariesBatch1 292 18,375 24,284 30,777
AaveV3LibrariesBatch2 292 41,496 24,284 7,656
AaveV3MiscBatch 137 6,160 24,439 42,992
AaveV3MiscProcedure 21 47 24,555 49,105
AaveV3MockAssetEModeUpdate 3,666 3,895 20,910 45,257
AaveV3MockBorrowUpdate 3,516 3,708 21,060 45,444
AaveV3MockBorrowUpdateNoChange 3,546 3,738 21,030 45,414
AaveV3MockCapUpdate 3,461 3,653 21,115 45,499
AaveV3MockCollateralUpdate 3,520 3,712 21,056 45,440
AaveV3MockCollateralUpdateCorrectBonus 3,520 3,712 21,056 45,440
AaveV3MockCollateralUpdateLtZero 3,530 3,722 21,046 45,430
AaveV3MockCollateralUpdateLtZeroLiqProtocolFeeOnly 3,538 3,730 21,038 45,422
AaveV3MockCollateralUpdateNoChange 3,547 3,739 21,029 45,413
AaveV3MockCollateralUpdateWrongBonus 3,524 3,716 21,052 45,436
AaveV3MockEModeCategoryCreation 3,910 4,189 20,666 44,963
AaveV3MockEModeCategoryUpdate 3,377 3,509 21,199 45,643
AaveV3MockEModeCategoryUpdateEdgeBonus 3,380 3,512 21,196 45,640
AaveV3MockEModeCategoryUpdateNoChange 3,448 3,580 21,128 45,572
AaveV3MockListing 3,802 4,031 20,774 45,121
AaveV3MockListingCustom 4,096 4,405 20,480 44,747
AaveV3MockListingCustomWithEModeCreation 4,575 4,898 20,001 44,254
AaveV3MockListingWithEModeCreation 4,280 4,523 20,296 44,629
AaveV3MockPriceFeedUpdate 3,471 3,700 21,105 45,452
AaveV3MockPriceFeedUpdateInvalidDecimals 3,471 3,700 21,105 45,452
AaveV3MockRatesUpdate 3,479 3,671 21,097 45,481
AaveV3OracleProcedure 21 47 24,555 49,105
AaveV3ParaswapBatch 189 28,296 24,387 20,856
AaveV3ParaswapProcedure 21 47 24,555 49,105
AaveV3PeripheryBatch 353 37,439 24,223 11,713
AaveV3PoolBatch 137 41,634 24,439 7,518
AaveV3PoolConfigProcedure 21 47 24,555 49,105
AaveV3PoolProcedure 21 47 24,555 49,105
AaveV3SetupBatch 11,437 28,469 13,139 20,683
AaveV3SetupProcedure 21 47 24,555 49,105
AaveV3TestListing 5,182 12,843 19,394 36,309
AaveV3TokensBatch 137 20,379 24,439 28,773
AaveV3TokensProcedure 21 47 24,555 49,105
AaveV3TreasuryProcedure 21 47 24,555 49,105
Actor 945 1,757 23,631 47,395
Address (lib/solidity-utils/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Address.sol) 44 94 24,532 49,058
Address (src/contracts/dependencies/openzeppelin/contracts/Address.sol) 44 94 24,532 49,058
AdminUpgradeabilityProxy 1,546 2,458 23,030 46,694
AugustusRegistryMock 162 188 24,414 48,964
BaseAdminUpgradeabilityProxy 1,538 1,566 23,038 47,586
BaseHandler 147 866 24,429 48,286
BaseHooks 147 866 24,429 48,286
BaseImmutableAdminUpgradeabilityProxy 1,304 1,471 23,272 47,681
BaseUpgradeabilityProxy 108 134 24,468 49,018
BorrowEngine 2,499 2,551 22,077 46,601
BorrowLogic 11,319 11,371 13,257 37,781
BorrowingHandler 20,347 21,067 4,229 28,085
CalldataLogic 44 94 24,532 49,058
CapsEngine 1,149 1,201 23,427 47,951
CollateralEngine 2,999 3,051 21,577 46,101
Collector 6,496 6,710 18,080 42,442
ConfiguratorInputTypes 44 94 24,532 49,058
ConfiguratorLogic 5,513 5,565 19,063 43,587
Create2Factory 52 78 24,524 49,074
Create2Utils 121 171 24,455 48,981
DataTypes 44 94 24,532 49,058
DefaultMarketInput 21 47 24,555 49,105
DefaultReserveInterestRateStrategyV2 3,575 3,759 21,001 45,393
DeployPermit2 44 94 24,532 49,058
DeployUtils 916 944 23,660 48,208
DonationAttackHandler 859 1,579 23,717 47,573
ECDSA 44 94 24,532 49,058
EIP712SigUtils 770 822 23,806 48,330
EModeConfiguration 44 94 24,532 49,058
EModeEngine 7,504 7,556 17,072 41,596
ERC1967Proxy 122 973 24,454 48,179
ERC1967Utils 44 94 24,532 49,058
ERC20 2,086 2,788 22,490 46,364
EmissionManager 3,444 3,905 21,132 45,247
EmptyImplementation 21 47 24,555 49,105
EngineFlags 44 94 24,532 49,058
EnumerableSet 44 94 24,532 49,058
Errors (lib/solidity-utils/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Errors.sol) 44 94 24,532 49,058
Errors (src/contracts/protocol/libraries/helpers/Errors.sol) 44 94 24,532 49,058
FactoryDeployer 214 240 24,362 48,912
Faucet 2,038 2,570 22,538 46,582
FlashLoanHandler 14,703 15,423 9,873 33,729
FlashLoanLogic 8,394 8,446 16,182 40,706
FlashloanAttacker 1,610 2,034 22,966 47,118
GPv2SafeERC20 44 94 24,532 49,058
GenericLogic 44 94 24,532 49,058
InitializableAdminUpgradeabilityProxy 2,392 2,420 22,184 46,732
InitializableImmutableAdminUpgradeabilityProxy 1,863 2,030 22,713 47,122
InitializableUpgradeabilityProxy 879 907 23,697 48,245
IsolationModeLogic 44 94 24,532 49,058
L2Encoder 3,585 3,780 20,991 45,372
L2PoolInstance 22,787 23,255 1,789 25,897
LendingHandler 18,075 18,795 6,501 30,357
LiquidationDataProvider 7,565 7,839 17,011 41,313
LiquidationHandler 16,559 17,279 8,017 31,873
LiquidationHelper 44 94 24,532 49,058
LiquidationLogic 12,362 12,414 12,214 36,738
ListingEngine 6,731 6,783 17,845 42,369
MarketReportUtils 44 94 24,532 49,058
Math 44 94 24,532 49,058
MathUtils 44 94 24,532 49,058
MessageHashUtils 44 94 24,532 49,058
MetadataReporter 12,111 12,139 12,465 37,013
MintableDelegationERC20 2,534 3,267 22,042 45,885
MintableERC20 3,729 4,626 20,847 44,526
Mock 182 208 24,394 48,944
MockAToken (src/contracts/mocks/tokens/MockAToken.sol) 10,716 11,872 13,860 37,280
MockAToken (src/contracts/mocks/upgradeability/MockAToken.sol) 10,498 11,604 14,078 37,548
MockAggregator 134 273 24,442 48,879
MockAggregator18Decimals 134 273 24,442 48,879
MockAggregatorSetPrice 243 386 24,333 48,766
MockBadTransferStrategy 914 1,103 23,662 48,049
MockERC20AaveLMUpgradeable 7,937 8,152 16,639 41,000
MockERC4626StataTokenUpgradeable 9,517 9,859 15,059 39,293
MockFlashLoanATokenReceiver 2,378 2,756 22,198 46,396
MockFlashLoanBorrowInsideFlashLoan 2,123 2,400 22,453 46,752
MockFlashLoanReceiver (src/contracts/mocks/flashloan/MockFlashLoanReceiver.sol) 2,237 2,522 22,339 46,630
MockFlashLoanReceiver (tests/invariants/helpers/MockFlashLoanReceiver.sol) 1,403 1,431 23,173 47,721
MockFlashLoanReceiverWithoutMint 1,234 1,518 23,342 47,634
MockFlashLoanSimpleReceiver 1,484 1,769 23,092 47,383
MockIncentivesController 132 158 24,444 48,994
MockInitializableFromConstructorImple 349 643 24,227 48,509
MockInitializableImple 1,556 1,591 23,020 47,561
MockInitializableImpleV2 1,558 1,593 23,018 47,559
MockInitializableV1 307 342 24,269 48,810
MockInitializableV2 309 344 24,267 48,808
MockL2Pool 22,814 23,347 1,762 25,805
MockParaSwapAugustus 1,939 1,967 22,637 47,185
MockParaSwapAugustusRegistry 179 302 24,397 48,850
MockPeripheryContractV1 309 337 24,267 48,815
MockPeripheryContractV2 290 318 24,286 48,834
MockPoolInherited 21,651 22,194 2,925 26,958
MockReentrantInitializableImple 413 448 24,163 48,704
MockReserveConfiguration 2,142 2,170 22,434 46,982
MockReserveInterestRateStrategy 3,070 3,257 21,506 45,895
MockScaledTestnetERC20 4,479 5,845 20,097 43,307
MockScaledToken 2,874 3,700 21,702 45,452
MockSimpleFlashLoanReceiverWithoutMint 754 1,037 23,822 48,115
MockVariableDebtToken (src/contracts/mocks/tokens/MockDebtTokens.sol) 7,241 8,305 17,335 40,847
MockVariableDebtToken (src/contracts/mocks/upgradeability/MockVariableDebtToken.sol) 7,219 8,233 17,357 40,919
Ownable (src/contracts/dependencies/openzeppelin/contracts/Ownable.sol) 629 721 23,947 48,431
Panic 44 94 24,532 49,058
ParaSwapLiquiditySwapAdapter 8,151 9,238 16,425 39,914
ParaSwapRepayAdapter 8,726 9,902 15,850 39,250
ParaSwapWithdrawSwapAdapter 6,673 7,690 17,903 41,462
PercentageMath 44 94 24,532 49,058
PoolAddressesProvider 6,965 8,251 17,611 40,901
PoolAddressesProviderRegistry 1,946 2,407 22,630 46,745
PoolConfiguratorInstance 18,994 19,029 5,582 30,123
PoolHandler 18,126 18,846 6,450 30,306
PoolInstance 21,491 21,955 3,085 27,197
PoolLogic 8,275 8,327 16,301 40,825
PoolPermissionedHandler 17,107 17,827 7,469 31,325
PoolStorage 21 47 24,555 49,105
Pretty 2,458 2,510 22,118 46,642
PriceAggregatorHandler 12,637 13,357 11,939 35,795
PriceFeedEngine 1,783 1,835 22,793 47,317
PriceOracle 469 497 24,107 48,655
PriceOracleSentinel 1,530 1,746 23,046 47,406
PropertiesLibString 44 94 24,532 49,058
ProtocolAssertions 147 866 24,429 48,286
ProxyAdmin 998 1,234 23,578 47,918
ProxyHelpers 44 94 24,532 49,058
PullRewardsTransferStrategy 1,172 1,398 23,404 47,754
RateEngine 2,227 2,279 22,349 46,873
ReserveConfiguration 128 178 24,448 48,974
ReserveLogic 44 94 24,532 49,058
RevenueSplitter 1,953 2,270 22,623 46,882
RewardsController 13,965 14,155 10,611 34,997
RewardsDataTypes 44 94 24,532 49,058
SafeCast 44 94 24,532 49,058
SafeERC20 (lib/solidity-utils/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol) 44 94 24,532 49,058
SafeERC20 (src/contracts/dependencies/openzeppelin/contracts/SafeERC20.sol) 44 94 24,532 49,058
SafeMath 44 94 24,532 49,058
SequencerOracle 865 1,326 23,711 47,826
Setup 147 866 24,429 48,286
SigUtils 492 544 24,084 48,608
SignedMath 44 94 24,532 49,058
SlotParser 330 382 24,246 48,770
StakeMock 355 383 24,221 48,769
StakedTokenTransferStrategy 1,972 2,682 22,604 46,470
StataTokenFactory 2,989 3,445 21,587 45,707
StataTokenV2 18,933 19,611 5,643 29,541
StorageSlot 44 94 24,532 49,058
Strings (lib/solidity-utils/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol) 44 94 24,532 49,058
Strings (src/contracts/dependencies/openzeppelin/contracts/Strings.sol) 44 94 24,532 49,058
Strings (tests/invariants/utils/Pretty.sol) 44 94 24,532 49,058
SupplyLogic 10,717 10,769 13,859 38,383
TestERC20 3,948 5,125 20,628 44,027
TestnetERC20 4,359 5,717 20,217 43,435
TokenMath 44 94 24,532 49,058
TransparentProxyFactory 6,667 6,695 17,909 42,457
TransparentUpgradeableProxy 1,096 3,528 23,480 45,624
UiIncentiveDataProviderV3 9,118 9,146 15,458 40,006
UiPoolDataProviderV3 10,146 10,344 14,430 38,808
UpgradeabilityProxy 108 861 24,468 48,291
UserConfiguration 44 94 24,532 49,058
ValidationLogic 141 191 24,435 48,961
VariableDebtTokenHandler 1,185 1,905 23,391 47,247
VariableDebtTokenHarness 7,237 8,251 17,339 40,901
VariableDebtTokenInstance 7,219 8,191 17,357 40,961
VariableDebtTokenMainnetInstanceGHO 7,248 8,220 17,328 40,932
WETH9 1,886 2,352 22,690 46,800
WETH9Mock 2,641 3,812 21,935 45,340
WETH9Mocked 2,192 2,658 22,384 46,494
WadRayMath 44 94 24,532 49,058
WalletBalanceProvider 2,485 2,513 22,091 46,639
WalletMock 21 47 24,555 49,105
WrappedTokenGatewayV3 5,387 6,252 19,189 42,900

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

🔮 Coverage report
File Line Coverage Function Coverage Branch Coverage
src/contracts/dependencies/gnosis/contracts/GPv2SafeERC20.sol ${\color{red}68.42\%}$
$26 / 38$
23, 24, 78, 79, 80 and 7 more
${\color{green}100\%}$
$4 / 4$
${\color{red}42.86\%}$
$3 / 7$
src/contracts/dependencies/openzeppelin/ReentrancyGuard.sol ${\color{red}75\%}$
$6 / 8$
67, 68
${\color{red}66.67\%}$
$2 / 3$
ReentrancyGuard._initGuard
${\color{red}50\%}$
$1 / 2$
src/contracts/dependencies/openzeppelin/contracts/AccessControl.sol ${\color{orange}91.18\%}$
$31 / 34$
76, 77, 115
${\color{orange}83.33\%}$
$10 / 12$
AccessControl.supportsInterface, AccessControl.getRoleAdmin
${\color{red}80\%}$
$4 / 5$
src/contracts/dependencies/openzeppelin/contracts/ERC165.sol ${\color{red}0\%}$
$0 / 2$
25, 26
${\color{red}0\%}$
$0 / 1$
ERC165.supportsInterface
${\color{green}100\%}$
$0 / 0$
src/contracts/dependencies/openzeppelin/contracts/ERC20.sol ${\color{red}79.66\%}$
$47 / 59$
182, 183, 184, 201, 205 and 7 more
${\color{orange}83.33\%}$
$15 / 18$
ERC20.increaseAllowance, ERC20.decreaseAllowance, ERC20._burn
${\color{red}41.67\%}$
$5 / 12$
src/contracts/dependencies/openzeppelin/contracts/Ownable.sol ${\color{red}80\%}$
$12 / 15$
55, 56, 57
${\color{red}80\%}$
$4 / 5$
Ownable.renounceOwnership
${\color{red}75\%}$
$3 / 4$
src/contracts/dependencies/openzeppelin/contracts/SafeERC20.sol ${\color{red}47.37\%}$
$9 / 19$
25, 26, 50, 51, 52 and 5 more
${\color{red}50\%}$
$3 / 6$
SafeERC20.safeTransferFrom, SafeERC20.safeIncreaseAllowance, SafeERC20.safeDecreaseAllowance
${\color{red}42.86\%}$
$3 / 7$
src/contracts/dependencies/openzeppelin/contracts/SafeMath.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$5 / 5$
${\color{red}62.5\%}$
$5 / 8$
src/contracts/dependencies/openzeppelin/upgradeability/AdminUpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 5$
21, 26, 27, 33, 34
${\color{red}0\%}$
$0 / 2$
AdminUpgradeabilityProxy.constructor, AdminUpgradeabilityProxy._willFallback
${\color{green}100\%}$
$0 / 0$
src/contracts/dependencies/openzeppelin/upgradeability/BaseAdminUpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 26$
35, 36, 39, 46, 47 and 21 more
${\color{red}0\%}$
$0 / 9$
BaseAdminUpgradeabilityProxy.ifAdmin, BaseAdminUpgradeabilityProxy.admin, BaseAdminUpgradeabilityProxy.implementation, BaseAdminUpgradeabilityProxy.changeAdmin, BaseAdminUpgradeabilityProxy.upgradeTo and 4 more
${\color{red}0\%}$
$0 / 8$
src/contracts/dependencies/openzeppelin/upgradeability/BaseUpgradeabilityProxy.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$3 / 3$
${\color{red}50\%}$
$1 / 2$
src/contracts/dependencies/openzeppelin/upgradeability/InitializableAdminUpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 7$
25, 26, 27, 28, 29 and 2 more
${\color{red}0\%}$
$0 / 2$
InitializableAdminUpgradeabilityProxy.initialize, InitializableAdminUpgradeabilityProxy._willFallback
${\color{red}0\%}$
$0 / 2$
src/contracts/dependencies/openzeppelin/upgradeability/InitializableUpgradeabilityProxy.sol ${\color{green}100\%}$
$7 / 7$
${\color{green}100\%}$
$1 / 1$
${\color{red}60\%}$
$3 / 5$
src/contracts/dependencies/openzeppelin/upgradeability/Proxy.sol ${\color{orange}87.5\%}$
$14 / 16$
25, 26
${\color{red}80\%}$
$4 / 5$
Proxy.receive
${\color{green}100\%}$
$0 / 0$
src/contracts/dependencies/openzeppelin/upgradeability/UpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 6$
20, 21, 22, 23, 24 and 1 more
${\color{red}0\%}$
$0 / 1$
UpgradeabilityProxy.constructor
${\color{red}0\%}$
$0 / 3$
src/contracts/dependencies/weth/WETH9.sol ${\color{orange}92.59\%}$
$25 / 27$
31, 32
${\color{orange}85.71\%}$
$6 / 7$
WETH9.receive
${\color{red}57.14\%}$
$4 / 7$
src/contracts/extensions/paraswap-adapters/BaseParaSwapAdapter.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$6 / 6$
${\color{red}60\%}$
$3 / 5$
src/contracts/extensions/paraswap-adapters/BaseParaSwapBuyAdapter.sol ${\color{orange}90\%}$
$27 / 30$
87, 94, 95
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$8 / 16$
src/contracts/extensions/paraswap-adapters/BaseParaSwapSellAdapter.sol ${\color{orange}88.89\%}$
$24 / 27$
87, 94, 95
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$8 / 16$
src/contracts/extensions/paraswap-adapters/ParaSwapLiquiditySwapAdapter.sol ${\color{green}100\%}$
$39 / 39$
${\color{green}100\%}$
$4 / 4$
${\color{red}63.64\%}$
$7 / 11$
src/contracts/extensions/paraswap-adapters/ParaSwapRepayAdapter.sol ${\color{lightgreen}95.83\%}$
$46 / 48$
143, 208
${\color{green}100\%}$
$5 / 5$
${\color{red}53.85\%}$
$7 / 13$
src/contracts/extensions/paraswap-adapters/ParaSwapWithdrawSwapAdapter.sol ${\color{green}100\%}$
$13 / 13$
${\color{green}100\%}$
$3 / 3$
${\color{red}66.67\%}$
$2 / 3$
src/contracts/extensions/stata-token/ERC20AaveLMUpgradeable.sol ${\color{orange}94.02\%}$
$110 / 117$
97, 114, 116, 126, 213 and 2 more
${\color{lightgreen}95.45\%}$
$21 / 22$
ERC20AaveLMUpgradeable.getCurrentRewardsIndex
${\color{red}68.75\%}$
$11 / 16$
src/contracts/extensions/stata-token/ERC4626StataTokenUpgradeable.sol ${\color{lightgreen}97.09\%}$
$100 / 103$
116, 146, 221
${\color{green}100\%}$
$21 / 21$
${\color{red}78.57\%}$
$11 / 14$
src/contracts/extensions/stata-token/StataTokenFactory.sol ${\color{orange}88.46\%}$
$23 / 26$
75, 82, 83
${\color{red}80\%}$
$4 / 5$
StataTokenFactory.getStataTokens
${\color{red}33.33\%}$
$1 / 3$
src/contracts/extensions/stata-token/StataTokenV2.sol ${\color{orange}90.63\%}$
$29 / 32$
59, 63, 68
${\color{orange}81.82\%}$
$9 / 11$
StataTokenV2.whoCanRescue, StataTokenV2.maxRescue
${\color{red}75\%}$
$3 / 4$
src/contracts/extensions/v3-config-engine/AaveV3ConfigEngine.sol ${\color{green}100\%}$
$47 / 47$
${\color{green}100\%}$
$13 / 13$
${\color{red}50\%}$
$4 / 8$
src/contracts/extensions/v3-config-engine/AaveV3Payload.sol ${\color{red}75.51\%}$
$37 / 49$
126, 127, 131, 134, 142 and 7 more
${\color{red}26.67\%}$
$4 / 15$
AaveV3Payload._bpsToRay, AaveV3Payload.newListings, AaveV3Payload.newListingsCustom, AaveV3Payload.capsUpdates, AaveV3Payload.collateralsUpdates and 6 more
${\color{green}100\%}$
$10 / 10$
src/contracts/extensions/v3-config-engine/libraries/BorrowEngine.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$2 / 2$
${\color{red}80\%}$
$8 / 10$
src/contracts/extensions/v3-config-engine/libraries/CapsEngine.sol ${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$2 / 2$
${\color{red}75\%}$
$3 / 4$
src/contracts/extensions/v3-config-engine/libraries/CollateralEngine.sol ${\color{red}72.73\%}$
$24 / 33$
39, 42, 48, 50, 51 and 4 more
${\color{green}100\%}$
$2 / 2$
${\color{red}62.5\%}$
$10 / 16$
src/contracts/extensions/v3-config-engine/libraries/EModeEngine.sol ${\color{orange}93.55\%}$
$58 / 62$
143, 147, 152, 191
${\color{green}100\%}$
$6 / 6$
${\color{red}66.67\%}$
$16 / 24$
src/contracts/extensions/v3-config-engine/libraries/ListingEngine.sol ${\color{green}100\%}$
$34 / 34$
${\color{green}100\%}$
$3 / 3$
${\color{red}50\%}$
$2 / 4$
src/contracts/extensions/v3-config-engine/libraries/PriceFeedEngine.sol ${\color{green}100\%}$
$13 / 13$
${\color{green}100\%}$
$2 / 2$
${\color{red}62.5\%}$
$5 / 8$
src/contracts/extensions/v3-config-engine/libraries/RateEngine.sol ${\color{red}64.52\%}$
$20 / 31$
45, 46, 47, 50, 51 and 6 more
${\color{green}100\%}$
$3 / 3$
${\color{red}14.29\%}$
$1 / 7$
src/contracts/helpers/AaveProtocolDataProvider.sol ${\color{orange}90.67\%}$
$68 / 75$
56, 57, 60, 61, 156 and 2 more
${\color{lightgreen}95.24\%}$
$20 / 21$
AaveProtocolDataProvider.getReserveData
${\color{red}25\%}$
$1 / 4$
src/contracts/helpers/L2Encoder.sol ${\color{green}100\%}$
$68 / 68$
${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$0 / 0$
src/contracts/helpers/LiquidationDataProvider.sol ${\color{orange}90.78\%}$
$128 / 141$
49, 66, 70, 74, 78 and 8 more
${\color{red}80\%}$
$12 / 15$
LiquidationDataProvider.getUserPositionFullInfo, LiquidationDataProvider.getCollateralFullInfo, LiquidationDataProvider.getDebtFullInfo
${\color{red}75\%}$
$15 / 20$
src/contracts/helpers/UiIncentiveDataProviderV3.sol ${\color{red}0\%}$
$0 / 90$
17, 26, 29, 32, 35 and 85 more
${\color{red}0\%}$
$0 / 5$
UiIncentiveDataProviderV3.getFullReservesIncentiveData, UiIncentiveDataProviderV3.getReservesIncentivesData, UiIncentiveDataProviderV3._getReservesIncentivesData, UiIncentiveDataProviderV3.getUserReservesIncentivesData, UiIncentiveDataProviderV3._getUserReservesIncentivesData
${\color{red}0\%}$
$0 / 4$
src/contracts/helpers/UiPoolDataProviderV3.sol ${\color{red}2.7\%}$
$3 / 111$
38, 41, 42, 45, 48 and 103 more
${\color{red}16.67\%}$
$1 / 6$
UiPoolDataProviderV3.getReservesList, UiPoolDataProviderV3.getReservesData, UiPoolDataProviderV3.getEModes, UiPoolDataProviderV3.getUserReservesData, UiPoolDataProviderV3.bytes32ToString
${\color{red}0\%}$
$0 / 12$
src/contracts/helpers/WalletBalanceProvider.sol ${\color{red}0\%}$
$0 / 29$
34, 35, 36, 38, 39 and 24 more
${\color{red}0\%}$
$0 / 3$
WalletBalanceProvider.balanceOf, WalletBalanceProvider.batchBalanceOf, WalletBalanceProvider.getUserWalletBalances
${\color{red}0\%}$
$0 / 4$
src/contracts/helpers/WrappedTokenGatewayV3.sol ${\color{green}100\%}$
$55 / 55$
${\color{green}100\%}$
$12 / 12$
${\color{orange}81.82\%}$
$9 / 11$
src/contracts/instances/ATokenInstance.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$1 / 2$
src/contracts/instances/ATokenWithDelegationInstance.sol ${\color{red}80\%}$
$8 / 10$
28, 29
${\color{red}50\%}$
$1 / 2$
ATokenWithDelegationInstance.getRevision
${\color{red}50\%}$
$1 / 2$
src/contracts/instances/PoolConfiguratorInstance.sol ${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$0 / 0$
src/contracts/instances/PoolInstance.sol ${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$2 / 2$
src/contracts/instances/VariableDebtTokenInstance.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$2 / 2$
src/contracts/instances/VariableDebtTokenMainnetInstanceGHO.sol ${\color{red}0\%}$
$0 / 11$
18, 19, 23, 31, 32 and 6 more
${\color{red}0\%}$
$0 / 3$
VariableDebtTokenMainnetInstanceGHO.getRevision, VariableDebtTokenMainnetInstanceGHO.initialize, VariableDebtTokenMainnetInstanceGHO.updateDiscountDistribution
${\color{red}0\%}$
$0 / 2$
src/contracts/misc/AaveOracle.sol ${\color{green}100\%}$
$43 / 43$
${\color{green}100\%}$
$11 / 11$
${\color{green}100\%}$
$10 / 10$
src/contracts/misc/DefaultReserveInterestRateStrategyV2.sol ${\color{green}100\%}$
$52 / 52$
${\color{green}100\%}$
$15 / 15$
${\color{green}100\%}$
$16 / 16$
src/contracts/misc/PriceOracleSentinel.sol ${\color{green}100\%}$
$27 / 27$
${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$4 / 4$
src/contracts/misc/aave-upgradeability/BaseImmutableAdminUpgradeabilityProxy.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$7 / 7$
${\color{red}33.33\%}$
$2 / 6$
src/contracts/misc/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.sol ${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/misc/aave-upgradeability/VersionedInitializable.sol ${\color{green}100\%}$
$15 / 15$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$4 / 4$
src/contracts/misc/flashloan/base/FlashLoanReceiverBase.sol ${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/misc/flashloan/base/FlashLoanSimpleReceiverBase.sol ${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/configuration/ACLManager.sol ${\color{lightgreen}95.35\%}$
$41 / 43$
115, 116
${\color{orange}95\%}$
$19 / 20$
ACLManager.isBridge
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/configuration/PoolAddressesProvider.sol ${\color{green}100\%}$
$81 / 81$
${\color{green}100\%}$
$23 / 23$
${\color{green}100\%}$
$4 / 4$
src/contracts/protocol/configuration/PoolAddressesProviderRegistry.sol ${\color{green}100\%}$
$34 / 34$
${\color{green}100\%}$
$8 / 8$
${\color{orange}85.71\%}$
$6 / 7$
src/contracts/protocol/libraries/configuration/EModeConfiguration.sol ${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$2 / 2$
${\color{red}66.67\%}$
$4 / 6$
src/contracts/protocol/libraries/configuration/ReserveConfiguration.sol ${\color{green}100\%}$
$85 / 85$
${\color{green}100\%}$
$36 / 36$
${\color{red}61.11\%}$
$11 / 18$
src/contracts/protocol/libraries/configuration/UserConfiguration.sol ${\color{lightgreen}95.08\%}$
$58 / 61$
78, 83, 84
${\color{orange}92.86\%}$
$13 / 14$
UserConfiguration.isUsingAsCollateralOrBorrowing
${\color{red}66.67\%}$
$12 / 18$
src/contracts/protocol/libraries/helpers/TokenMath.sol ${\color{green}100\%}$
$14 / 14$
${\color{green}100\%}$
$7 / 7$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/libraries/logic/BorrowLogic.sol ${\color{green}100\%}$
$44 / 44$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$10 / 10$
src/contracts/protocol/libraries/logic/CalldataLogic.sol ${\color{green}100\%}$
$70 / 70$
${\color{green}100\%}$
$8 / 8$
${\color{green}100\%}$
$3 / 3$
src/contracts/protocol/libraries/logic/ConfiguratorLogic.sol ${\color{green}100\%}$
$35 / 35$
${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/libraries/logic/FlashLoanLogic.sol ${\color{green}100\%}$
$37 / 37$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$6 / 6$
src/contracts/protocol/libraries/logic/GenericLogic.sol ${\color{green}100\%}$
$52 / 52$
${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$11 / 11$
src/contracts/protocol/libraries/logic/IsolationModeLogic.sol ${\color{green}100\%}$
$24 / 24$
${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$6 / 6$
src/contracts/protocol/libraries/logic/LiquidationLogic.sol ${\color{green}100\%}$
$134 / 134$
${\color{green}100\%}$
$6 / 6$
${\color{orange}94.44\%}$
$34 / 36$
src/contracts/protocol/libraries/logic/PoolLogic.sol ${\color{green}100\%}$
$48 / 48$
${\color{green}100\%}$
$9 / 9$
${\color{red}72.73\%}$
$8 / 11$
src/contracts/protocol/libraries/logic/ReserveLogic.sol ${\color{green}100\%}$
$64 / 64$
${\color{green}100\%}$
$8 / 8$
${\color{green}100\%}$
$13 / 13$
src/contracts/protocol/libraries/logic/SupplyLogic.sol ${\color{green}100\%}$
$65 / 65$
${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$21 / 21$
src/contracts/protocol/libraries/logic/ValidationLogic.sol ${\color{green}100\%}$
$135 / 135$
${\color{green}100\%}$
$17 / 17$
${\color{lightgreen}96.92\%}$
$126 / 130$
src/contracts/protocol/libraries/math/PercentageMath.sol ${\color{orange}90.91\%}$
$20 / 22$
34, 87
${\color{green}100\%}$
$5 / 5$
${\color{red}60\%}$
$3 / 5$
src/contracts/protocol/libraries/math/WadRayMath.sol ${\color{orange}86.05\%}$
$37 / 43$
39, 57, 68, 108, 146 and 1 more
${\color{green}100\%}$
$10 / 10$
${\color{red}40\%}$
$4 / 10$
src/contracts/protocol/pool/L2Pool.sol ${\color{green}100\%}$
$29 / 29$
${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/pool/Pool.sol ${\color{lightgreen}99.01\%}$
$200 / 202$
554, 555
${\color{lightgreen}98.59\%}$
$70 / 71$
Pool.getReservesCount
${\color{red}74.29\%}$
$26 / 35$
src/contracts/protocol/pool/PoolConfigurator.sol ${\color{green}100\%}$
$262 / 262$
${\color{green}100\%}$
$45 / 45$
${\color{lightgreen}95.12\%}$
$78 / 82$
src/contracts/protocol/tokenization/AToken.sol ${\color{green}100\%}$
$76 / 76$
${\color{green}100\%}$
$18 / 18$
${\color{orange}92.86\%}$
$13 / 14$
src/contracts/protocol/tokenization/ATokenWithDelegation.sol ${\color{green}100\%}$
$21 / 21$
${\color{green}100\%}$
$8 / 8$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/tokenization/VariableDebtToken.sol ${\color{green}100\%}$
$32 / 32$
${\color{green}100\%}$
$13 / 13$
${\color{green}100\%}$
$1 / 1$
src/contracts/protocol/tokenization/base/DebtTokenBase.sol ${\color{green}100\%}$
$24 / 24$
${\color{green}100\%}$
$6 / 6$
${\color{green}100\%}$
$7 / 7$
src/contracts/protocol/tokenization/base/EIP712Base.sol ${\color{green}100\%}$
$11 / 11$
${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$1 / 1$
src/contracts/protocol/tokenization/base/IncentivizedERC20.sol ${\color{orange}93.33\%}$
$70 / 75$
158, 163, 164, 170, 171
${\color{lightgreen}95.45\%}$
$21 / 22$
IncentivizedERC20.transferFrom
${\color{green}100\%}$
$9 / 9$
src/contracts/protocol/tokenization/base/MintableIncentivizedERC20.sol ${\color{green}100\%}$
$14 / 14$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/tokenization/base/ScaledBalanceTokenBase.sol ${\color{green}100\%}$
$36 / 36$
${\color{green}100\%}$
$6 / 6$
${\color{green}100\%}$
$6 / 6$
src/contracts/protocol/tokenization/delegation/BaseDelegation.sol ${\color{green}100\%}$
$90 / 90$
${\color{green}100\%}$
$15 / 15$
${\color{red}80\%}$
$24 / 30$
src/contracts/rewards/EmissionManager.sol ${\color{green}100\%}$
$30 / 30$
${\color{green}100\%}$
$12 / 12$
${\color{red}50\%}$
$3 / 6$
src/contracts/rewards/RewardsController.sol ${\color{lightgreen}99.04\%}$
$103 / 104$
201
${\color{green}100\%}$
$24 / 24$
${\color{red}60.71\%}$
$17 / 28$
src/contracts/rewards/RewardsDistributor.sol ${\color{lightgreen}99.32\%}$
$145 / 146$
429
${\color{green}100\%}$
$24 / 24$
${\color{orange}80.95\%}$
$17 / 21$
src/contracts/rewards/transfer-strategies/PullRewardsTransferStrategy.sol ${\color{green}100\%}$
$7 / 7$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$0 / 0$
src/contracts/rewards/transfer-strategies/StakedTokenTransferStrategy.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$6 / 6$
${\color{red}50\%}$
$1 / 2$
src/contracts/rewards/transfer-strategies/TransferStrategyBase.sol ${\color{green}100\%}$
$14 / 14$
${\color{green}100\%}$
$6 / 6$
${\color{red}50\%}$
$2 / 4$
src/contracts/treasury/Collector.sol ${\color{lightgreen}96.74\%}$
$89 / 92$
152, 191, 206
${\color{orange}93.75\%}$
$15 / 16$
Collector.deltaOf
${\color{red}79.17\%}$
$19 / 24$
src/contracts/treasury/RevenueSplitter.sol ${\color{green}100\%}$
$25 / 25$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$3 / 3$

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

🌈 Test Results
No files changed, compilation skipped

Ran 20 tests for tests/protocol/configuration/ACLManager.t.sol:ACLManagerTest
[PASS] testDefaultAdminRoleAfterDeploy() (gas: 20677)
[PASS] test_defaultAdmin_grantAdminRole_FlashBorrowAdmin() (gas: 65496)
[PASS] test_defaultAdmin_grants_AssetsListingRole() (gas: 37587)
[PASS] test_defaultAdmin_grants_BridgeRole() (gas: 37653)
[PASS] test_defaultAdmin_grants_EmergencyAdminRole() (gas: 37600)
[PASS] test_defaultAdmin_grants_PoolAdminRole() (gas: 37720)
[PASS] test_defaultAdmin_grants_RiskRole() (gas: 37717)
[PASS] test_defaultAdmin_remove_AssetsListingRole() (gas: 29432)
[PASS] test_defaultAdmin_remove_BridgeRole() (gas: 29521)
[PASS] test_defaultAdmin_remove_EmergencyAdminRole() (gas: 29416)
[PASS] test_defaultAdmin_remove_PoolAdminRole() (gas: 29538)
[PASS] test_defaultAdmin_remove_RiskRole() (gas: 29423)
[PASS] test_flashBorrowAdmin_grantRole_FlashBorrowRole() (gas: 91896)
[PASS] test_flashBorrowAdmin_removeRole_FlashBorrowRole() (gas: 76412)
[PASS] test_remove_riskAdmin() (gas: 29432)
[PASS] test_revert_anyUser_grantAdminRole_FlashBorrowAdmin() (gas: 72834)
[PASS] test_revert_deploy_ACLADMIN_zeroAddress() (gas: 1523412)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_addRole_FlashBorrowRole() (gas: 98813)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_revokeRole_FlashBorrowRole() (gas: 125190)
[PASS] test_reverts_notAdmin_grantRole_FlashBorrow() (gas: 113970)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 9.56ms (2.06ms CPU time)

Ran 7 tests for tests/protocol/configuration/AddressesProviderRegistry.t.sol:PoolAddressesProviderRegistryTest
[PASS] testAddAddressesProvider() (gas: 120369)
[PASS] testRemoveAddressesProvider() (gas: 96895)
[PASS] testRemoveMultipleAddressesProvider() (gas: 242308)
[PASS] test_addressesProviderAddedToRegistry() (gas: 16383)
[PASS] test_removesLastProvider() (gas: 32576)
[PASS] test_revert_registry_0() (gas: 15287)
[PASS] test_revert_removeNonExistingAddressesProvider() (gas: 27258)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 34.16ms (1.62ms CPU time)

Ran 4 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.upgradeabilty.t.sol:PoolConfiguratorUpgradeabilityTests
[PASS] test_getConfiguratorLogic() (gas: 13601)
[PASS] test_setReserveInterestRateData() (gas: 142573)
[PASS] test_updateAToken() (gas: 2384516)
[PASS] test_updateVariableDebtToken() (gas: 1683120)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 34.36ms (3.76ms CPU time)

Ran 1 test for tests/template/BaseTest.t.sol:BaseTest
[PASS] test_default() (gas: 229246)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 32.23ms (297.07µs CPU time)

Ran 5 tests for tests/treasury/Collector.t.sol:CollectorTest
[PASS] testApprove() (gas: 49702)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18183)
[PASS] testTransfer() (gas: 54858)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18207)
[PASS] test_receiveEth() (gas: 20265)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 2.82ms (242.97µs CPU time)

Ran 6 tests for tests/treasury/Collector.t.sol:FundsAdminRoleBytesTest
[PASS] testApprove() (gas: 49658)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18161)
[PASS] testTransfer() (gas: 54903)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18185)
[PASS] test_receiveEth() (gas: 20288)
[PASS] test_successful() (gas: 13383)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 3.45ms (259.55µs CPU time)

Ran 7 tests for tests/treasury/Collector.t.sol:IsFundsAdminTest
[PASS] testApprove() (gas: 49658)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18183)
[PASS] testTransfer() (gas: 54858)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18207)
[PASS] test_isFundsAdmin() (gas: 24249)
[PASS] test_isNotFundsAdmin() (gas: 17579)
[PASS] test_receiveEth() (gas: 20288)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 3.00ms (448.12µs 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: 618079)
[PASS] test_reverts_initReserves_max() (gas: 174166)
[PASS] test_reverts_initReserves_reserveAlreadyAdded() (gas: 197304)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 43.18ms (582.07µs CPU time)

Ran 26 tests for tests/treasury/Collector.t.sol:StreamsTest
[PASS] testApprove() (gas: 49636)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18335)
[PASS] testCancelStreamByFundsAdmin() (gas: 206160)
[PASS] testCancelStreamByRecipient() (gas: 231265)
[PASS] testCancelStreamWhenNotAdminOrRecipient() (gas: 242221)
[PASS] testCancelStreamWhenStreamNotExists() (gas: 22839)
[PASS] testCreateStream() (gas: 244288)
[PASS] testCreateStreamWhenDepositIsZero() (gas: 27252)
[PASS] testCreateStreamWhenNotFundsAdmin() (gas: 24600)
[PASS] testCreateStreamWhenRecipientIsCollector() (gas: 25041)
[PASS] testCreateStreamWhenRecipientIsTheCaller() (gas: 25296)
[PASS] testCreateStreamWhenRecipientIsZero() (gas: 25064)
[PASS] testCreateStreamWhenStartTimeInThePast() (gas: 25761)
[PASS] testCreateStreamWhenStopTimeBeforeStart() (gas: 23210)
[PASS] testGetNextStreamId() (gas: 17592)
[PASS] testGetNotExistingStream() (gas: 18416)
[PASS] testGetStream() (gas: 234347)
[PASS] testTransfer() (gas: 54947)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18337)
[PASS] testWithdrawFromStream() (gas: 307164)
[PASS] testWithdrawFromStreamFinishesSuccessfully() (gas: 230192)
[PASS] testWithdrawFromStreamWhenAmountExceedsBalance() (gas: 243607)
[PASS] testWithdrawFromStreamWhenAmountIsZero() (gas: 238105)
[PASS] testWithdrawFromStreamWhenNotAdminOrRecipient() (gas: 240264)
[PASS] testWithdrawFromStreamWhenStreamNotExists() (gas: 23004)
[PASS] test_receiveEth() (gas: 20310)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 7.15ms (4.56ms CPU time)

Ran 19 tests for tests/gas/AToken.Transfer.gas.t.sol:ATokenTransfer_gas_Tests
[PASS] test_transferFrom_fullAmount() (gas: 735698)
[PASS] test_transferFrom_fullAmount_dirtyReceiver() (gas: 1257683)
[PASS] test_transferFrom_fullAmount_senderCollateralDisabled() (gas: 784485)
[PASS] test_transferFrom_fullAmount_senderCollateralDisabled_receiverNonZeroFunds() (gas: 1285386)
[PASS] test_transferFrom_fullAmount_senderCollateralDisabled_receiverNonZeroFunds2() (gas: 1236531)
[PASS] test_transferFrom_partialAmount() (gas: 746292)
[PASS] test_transferFrom_partialAmount_receiverNonZeroFunds() (gas: 1247162)
[PASS] test_transferFrom_partialAmount_senderCollateralEnabled() (gas: 702300)
[PASS] test_transferFrom_partialAmount_senderCollateralEnabled_receiverNonZeroFunds() (gas: 1203146)
[PASS] test_transfer_fullAmount() (gas: 673701)
[PASS] test_transfer_fullAmount_dirtyReceiver() (gas: 1195714)
[PASS] test_transfer_fullAmount_senderCollateralDisabled() (gas: 722603)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverDirty() (gas: 1194417)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverNonZeroFunds() (gas: 1223454)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverNonZeroFunds2() (gas: 1174665)
[PASS] test_transfer_partialAmount() (gas: 693844)
[PASS] test_transfer_partialAmount_receiverNonZeroFunds() (gas: 1194720)
[PASS] test_transfer_partialAmount_senderCollateralEnabled() (gas: 649809)
[PASS] test_transfer_partialAmount_senderCollateralEnabled_receiverNonZeroFunds() (gas: 1150686)
Suite result: ok. 19 passed; 0 failed; 0 skipped; finished in 75.72ms (31.67ms CPU time)

Ran 11 tests for tests/misc/PriceOracleSentinel.t.sol:PriceOracleSentinelTest
[PASS] test_isBorrowAllowed_network_down() (gas: 27215)
[PASS] test_isBorrowAllowed_network_up_not_grace_period() (gas: 47299)
[PASS] test_isBorrowAllowed_true_network_up_grace_period_pass() (gas: 47353)
[PASS] test_isLiquidationAllowed_network_down() (gas: 27126)
[PASS] test_isLiquidationAllowed_network_up_not_grace_period() (gas: 47276)
[PASS] test_isLiquidationAllowed_true_network_up_grace_period_pass() (gas: 47374)
[PASS] test_new_PriceOracleSentinel() (gas: 395850)
[PASS] test_reverts_setGracePeriod_not_poolAdmin() (gas: 25429)
[PASS] test_reverts_setSequencerOracle_not_poolAdmin() (gas: 22340)
[PASS] test_setGracePeriod() (gas: 32317)
[PASS] test_setSequencerOracle() (gas: 24455)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 60.07ms (888.28µs CPU time)

Ran 10 tests for tests/protocol/tokenization/ATokenDelegation.t.sol:ATokenDelegationTest
[PASS] test_delegate() (gas: 401010)
[PASS] test_getDelegates() (gas: 133834)
[PASS] test_getPowersCurrent() (gas: 643688)
[PASS] test_getPowersCurrent_with_index_growth() (gas: 745616)
[PASS] test_initial_state_without_delegation() (gas: 47449)
[PASS] test_mint_and_burn() (gas: 2662394)
[PASS] test_precision() (gas: 1111373)
[PASS] test_transfer() (gas: 2317760)
[PASS] test_transferFrom() (gas: 2428856)
[PASS] test_transferOnLiquidation() (gas: 2178174)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 102.91ms (67.93ms CPU time)

Ran 18 tests for tests/gas/ProtocolDataProvider.gas.t.sol:ProtocolDataProvider_gas_Tests
[PASS] test_getATokenTotalSupply() (gas: 40320)
[PASS] test_getAllATokens() (gas: 75395)
[PASS] test_getAllReservesTokens() (gas: 54783)
[PASS] test_getDebtCeiling() (gas: 21638)
[PASS] test_getFlashLoanEnabled() (gas: 21738)
[PASS] test_getInterestRateStrategyAddress() (gas: 19303)
[PASS] test_getIsVirtualAccActive() (gas: 10855)
[PASS] test_getLiquidationProtocolFee() (gas: 21719)
[PASS] test_getPaused() (gas: 21789)
[PASS] test_getReserveCaps() (gas: 21723)
[PASS] test_getReserveConfigurationData() (gas: 22702)
[PASS] test_getReserveDeficit() (gas: 21346)
[PASS] test_getReserveTokensAddresses() (gas: 25609)
[PASS] test_getSiloedBorrowing() (gas: 21793)
[PASS] test_getTotalDebt() (gas: 40320)
[PASS] test_getUnbackedMintCap() (gas: 10808)
[PASS] test_getUserReserveData() (gas: 609294)
[PASS] test_getVirtualUnderlyingBalance() (gas: 21532)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 49.70ms (2.24ms CPU time)

Ran 10 tests for tests/protocol/tokenization/ATokenDelegation.t.sol:ATokenDelegationTestWithPermits
[PASS] test_delegate() (gas: 488081)
[PASS] test_getDelegates() (gas: 195817)
[PASS] test_getPowersCurrent() (gas: 751928)
[PASS] test_getPowersCurrent_with_index_growth() (gas: 821100)
[PASS] test_initial_state_without_delegation() (gas: 47449)
[PASS] test_mint_and_burn() (gas: 2742014)
[PASS] test_precision() (gas: 1111373)
[PASS] test_transfer() (gas: 2477129)
[PASS] test_transferFrom() (gas: 2564616)
[PASS] test_transferOnLiquidation() (gas: 2337538)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 105.17ms (75.80ms CPU time)

Ran 15 tests for tests/protocol/tokenization/ATokenEdgeCases.t.sol:ATokenEdgeCasesTests
[PASS] testApprove() (gas: 45201)
[PASS] testApproveMax() (gas: 45260)
[PASS] testApproveWithZeroAddressSpender() (gas: 42243)
[PASS] testCheckGetters() (gas: 261170)
[PASS] testDecreaseAllowance() (gas: 53198)
[PASS] testIncreaseAllowance() (gas: 53224)
[PASS] testIncreaseAllowanceFromZero() (gas: 48461)
[PASS] testMintToTreasury_amount_zero() (gas: 15692)
[PASS] testTransferFromZeroAmount() (gas: 124605)
[PASS] test_burn_zeroAddress() (gas: 257704)
[PASS] test_mintToZeroAddress() (gas: 80228)
[PASS] test_reverts_burnAmountScaledZero() (gas: 18964)
[PASS] test_reverts_mintAmountScaledZero() (gas: 19075)
[PASS] test_transferFrom_zeroAddress_origin() (gas: 124416)
[PASS] test_transfer_amount_MAX_UINT_120() (gas: 16576)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 34.35ms (3.23ms CPU time)

Ran 13 tests for tests/protocol/tokenization/ATokenEvents.t.sol:ATokenEventsTests
[PASS] test_allowance_events_in_approve_function() (gas: 58868)
[PASS] test_allowance_events_in_decreaseAllowance_function() (gas: 56974)
[PASS] test_allowance_events_in_increaseAllowance_function() (gas: 52385)
[PASS] test_allowance_events_in_renounceAllowance_function() (gas: 35045)
[PASS] test_allowance_events_in_transferFrom_function() (gas: 224498)
[PASS] test_atoken_burnEvents_fullBalance() (gas: 530844)
[PASS] test_atoken_burnEvents_multipleWithdrawals_withInterests() (gas: 617542)
[PASS] test_atoken_burnEvents_singleWithdraw_WithInterests() (gas: 541480)
[PASS] test_atoken_burnEvents_singleWithdraw_noInterests() (gas: 249884)
[PASS] test_atoken_burnEvents_withdrawAmountLessThanInterests() (gas: 544215)
[PASS] test_atoken_mintEvents_firstSupply() (gas: 250276)
[PASS] test_atoken_mintEvents_supplyAfterBorrow() (gas: 599314)
[PASS] test_mintToTreasury_events() (gas: 85780)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 41.14ms (13.99ms CPU time)

Ran 4 tests for tests/protocol/tokenization/ATokenModifiers.t.sol:ATokenModifiersTests
[PASS] test_revert_notAdmin_burn() (gas: 16880)
[PASS] test_revert_notAdmin_mint() (gas: 16883)
[PASS] test_revert_notAdmin_transferOnLiquidation() (gas: 16910)
[PASS] test_revert_notAdmin_transferUnderlyingTo() (gas: 16687)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 29.06ms (231.96µs CPU time)

Ran 9 tests for tests/protocol/tokenization/ATokenPermit.t.sol:ATokenPermitTests
[PASS] testCheckDomainSeparator() (gas: 26105)
[PASS] test_cancelPermit() (gas: 94221)
[PASS] test_chain_fork_calculateDomainSeparator() (gas: 32890)
[PASS] test_revert_submitPermit_0_expiration() (gas: 41222)
[PASS] test_revert_submitPermit_InvalidExpiration_previosCurrentBlock() (gas: 42120)
[PASS] test_revert_submitPermit_InvalidSignature() (gas: 49668)
[PASS] test_revert_submitPermit_invalid_nonce() (gas: 50252)
[PASS] test_revert_submitPermit_invalid_owner() (gas: 41071)
[PASS] test_submitPermit() (gas: 89802)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 32.25ms (3.49ms CPU time)

Ran 3 tests for tests/protocol/tokenization/ATokenRepay.t.sol:ATokenRepayTests
[PASS] test_repay_allDebt() (gas: 240834)
[PASS] test_repay_partialDebt() (gas: 237786)
[PASS] test_revert_repay_withoutFunds() (gas: 133408)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 29.12ms (3.11ms CPU time)

Ran 3 tests for tests/protocol/tokenization/ATokenRescueTokens.sol:ATokenRescueTokensTests
[PASS] test_rescueTokens() (gas: 77721)
[PASS] test_reverts_rescueTokens_CALLER_NOT_POOL_ADMIN() (gas: 70425)
[PASS] test_reverts_rescueTokens_UnderlyingCannotBeRescued() (gas: 71084)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 27.80ms (511.63µs CPU time)

Ran 23 tests for tests/protocol/pool/Pool.FlashLoans.t.sol:PoolFlashLoansTests
[PASS] test_flashloan() (gas: 185185)
[PASS] test_flashloan_borrow() (gas: 509124)
[PASS] test_flashloan_borrow_inside_flashloan_and_check_rate_after() (gas: 1710624)
[PASS] test_flashloan_multiple() (gas: 290763)
[PASS] test_flashloan_rounding_accruedToTreasury() (gas: 474735)
[PASS] test_flashloan_rounding_premium() (gas: 176417)
[PASS] test_flashloan_simple() (gas: 152197)
[PASS] test_flashloan_simple_2() (gas: 154281)
[PASS] test_flashloan_simple_borrow_inside_flashloan_and_check_rate_after() (gas: 1137085)
[PASS] test_flashloan_simple_rounding_accruedToTreasury() (gas: 452687)
[PASS] test_flashloan_simple_rounding_premium() (gas: 149865)
[PASS] test_revert_flashloan_borrow_stable() (gas: 207183)
[PASS] test_reverts_flashLoan_invalid_return() (gas: 180452)
[PASS] test_reverts_flashLoan_reserve_inactive() (gas: 143348)
[PASS] test_reverts_flashLoan_reserve_not_flash_loan_enabled() (gas: 102690)
[PASS] test_reverts_flashLoan_reserve_paused() (gas: 99545)
[PASS] test_reverts_flashLoan_same_asset_more_then_once(uint8) (runs: 1000, μ: 148875, ~: 110817)
[PASS] test_reverts_flashLoan_simple_invalid_return() (gas: 144316)
[PASS] test_reverts_flashloan_simple_transferred_funds() (gas: 154049)
[PASS] test_reverts_flashloan_transferred_funds() (gas: 184035)
[PASS] test_reverts_flashloans_eoa() (gas: 108029)
[PASS] test_reverts_supply_flashloan_simple_transfer_withdraw() (gas: 820485)
[PASS] test_reverts_supply_flashloan_transfer_withdraw() (gas: 852319)
Suite result: ok. 23 passed; 0 failed; 0 skipped; finished in 938.14ms (902.49ms CPU time)

Ran 12 tests for tests/gas/Pool.Getters.gas.t.sol:PoolGetters_gas_Tests
[PASS] test_getEModeCategoryCollateralConfig() (gas: 16653)
[PASS] test_getEModeCategoryData() (gas: 20422)
[PASS] test_getLiquidationGracePeriod() (gas: 18151)
[PASS] test_getReserveData() (gas: 41837)
[PASS] test_getUserAccountData() (gas: 30897)
[PASS] test_getUserAccountData_oneSupplies() (gas: 607004)
[PASS] test_getUserAccountData_oneSupplies_with_eMode_enabled() (gas: 907419)
[PASS] test_getUserAccountData_twoSupplies() (gas: 1165924)
[PASS] test_getUserAccountData_twoSupplies_oneBorrows() (gas: 2013694)
[PASS] test_getUserAccountData_twoSupplies_oneBorrows_with_eMode_enabled() (gas: 2512359)
[PASS] test_getUserAccountData_twoSupplies_with_eMode_enabled() (gas: 1566184)
[PASS] test_getUserAccountData_with_eMode_enabled() (gas: 213914)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 47.43ms (15.08ms CPU time)

Ran 7 tests for tests/protocol/tokenization/ATokenRounding.t.sol:ATokenRoundingTest
[PASS] test_balanceShouldRoundDown() (gas: 48321)
[PASS] test_fuzzEdge(uint256,uint256,uint256) (runs: 1000, μ: 324991, ~: 325078)
Logs:
  Bound result 99000000000000000000000659919
  Bound result 1152921504606846976
  Bound result 400000000

[PASS] test_supplyShouldRoundDown() (gas: 282794)
[PASS] test_supplyShouldRoundDown_revertIfZero() (gas: 144624)
[PASS] test_totalSupplyShouldRoundDown() (gas: 44087)
[PASS] test_transferAmountShouldBeRoundedUp() (gas: 387188)
[PASS] test_withdrawShouldRoundUp() (gas: 353876)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 859.77ms (832.14ms CPU time)

Ran 13 tests for tests/protocol/tokenization/ATokenTransfers.t.sol:ATokenTransferTests
[PASS] test_approve_and_renounceAllowance() (gas: 41204)
[PASS] test_atoken_alice_transfer_all_to_bob() (gas: 128984)
[PASS] test_atoken_alice_transfer_to_bob() (gas: 196754)
[PASS] test_atoken_alice_transfer_to_bob_zero() (gas: 152047)
[PASS] test_atoken_alice_transfer_to_carol_accrues_interests() (gas: 215541)
[PASS] test_atoken_alice_transfer_to_herself() (gas: 75663)
[PASS] test_atoken_alice_transfer_to_herself_zero() (gas: 75617)
[PASS] test_atoken_multiple_transfers() (gas: 168040)
[PASS] test_atoken_transfer_sets_enabled_as_collateral(uint256,uint256) (runs: 1000, μ: 360851, ~: 360732)
Logs:
  Bound result 125000000
  Bound result 1323200000

[PASS] test_atoken_transfer_some_collateral_from_bob_borrower_to_alice() (gas: 510849)
[PASS] test_atoken_transfer_to_bob_them_bob_borrows() (gas: 391754)
[PASS] test_reverts_atoken_transfer_all_collateral_from_bob_borrower_to_alice() (gas: 384182)
[PASS] test_scaled_balance_token_base_alice_transfer_to_bob_accrues_interests() (gas: 109535)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 987.16ms (959.59ms CPU time)

Ran 6 tests for tests/gas/ATokenWithDelegation.Transfer.gas.t.sol:ATokenWithDelegation_gas_Tests
[PASS] test_transfer_fullAmountSenderWithAndReceiverWithoutDelegations() (gas: 271073)
[PASS] test_transfer_fullAmountSenderWithoutAndReceiverWithDelegations_notDelegatees() (gas: 263010)
[PASS] test_transfer_fullAmountWithDelegations_delegatees() (gas: 569266)
[PASS] test_transfer_fullAmountWithDelegations_notDelegatees() (gas: 375119)
[PASS] test_transfer_fullAmountWithoutDelegations_delegatees() (gas: 357195)
[PASS] test_transfer_fullAmountWithoutDelegations_notDelegatees() (gas: 159002)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 39.89ms (2.94ms CPU time)

Ran 1 test for tests/protocol/tokenization/ATokenWithDelegationRounding.t.sol:ATokenWithDelegationRoundingTest
[PASS] test_getPowerCurrent_and_delegate_shouldRoundDown() (gas: 227432)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 31.31ms (814.56µs CPU time)

Ran 5 tests for tests/invariants/CryticToFoundry.t.sol:CryticToFoundry
[PASS] test_replay_V33_supply() (gas: 114887129)
[PASS] test_replay_v33_2transfer() (gas: 144990118)
[PASS] test_replay_v33_supply() (gas: 236015227)
[PASS] test_v32_borrow() (gas: 114945182)
[PASS] test_v32_withdrawEchidna() (gas: 114927137)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 2.62s (2.60s CPU time)

Ran 13 tests for tests/deployments/DeploymentsGasLimits.t.sol:DeploymentsGasLimits
[PASS] test0AaveV3SetupDeployment() (gas: 5310733)
[PASS] test10ConfigEngineDeployment() (gas: 7374062)
[PASS] test11StaticATokenDeployment() (gas: 6676133)
[PASS] test12PeripheralsTreasuryPartner() (gas: 7560610)
[PASS] test1AaveV3GettersBatch1Deployment() (gas: 4604224)
[PASS] test2AaveV3GettersBatch2Deployment() (gas: 3599146)
[PASS] test3AaveV3PoolDeployment() (gas: 8348159)
[PASS] test4AaveV3L2PoolDeployment() (gas: 8608687)
[PASS] test5PeripheralsRelease() (gas: 7071734)
[PASS] test6MiscDeployment() (gas: 1247701)
[PASS] test7ParaswapDeployment() (gas: 5160279)
[PASS] test8SetupMarket() (gas: 2670496)
[PASS] test9TokensMarket() (gas: 3883793)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 16.63ms (6.87ms CPU time)

Ran 4 tests for tests/protocol/tokenization/AToken_TransferFrom.t.sol:ATokenTransferFromTests
[PASS] test_transferFrom(uint128,uint256) (runs: 1000, μ: 149553, ~: 151453)
Logs:
  Bound result 99999000000000000000000000009901
  Bound result 99998000000000125000002

[PASS] test_transferFrom_max_allowance() (gas: 190565)
[PASS] test_transferFrom_shouldRevertIfSenderInsufficientAllowance() (gas: 58447)
[PASS] test_transferFrom_shouldRevertIfSenderIsNotApproved() (gas: 31502)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 479.94ms (453.38ms CPU time)

Ran 12 tests for tests/misc/AaveOracle.t.sol:AaveOracleTest
[PASS] testAddSingleSource() (gas: 1012313)
[PASS] testAssetZeroPriceAndZeroFallbackPrice() (gas: 1151410)
[PASS] testAssetZeroPriceNonZeroFallback() (gas: 1171353)
[PASS] testAssetZeroPriceWithoutFallback() (gas: 994026)
[PASS] testEmptySource() (gas: 897261)
[PASS] testGetBaseCurrencyPrice() (gas: 12312)
[PASS] testGetPriceViaFallbackOracle() (gas: 1075832)
[PASS] testUpdateFallbackOracle() (gas: 178435)
[PASS] testUpdateSingleSource() (gas: 126689)
[PASS] testUpdateSourceBaseCurrency() (gas: 138281)
[PASS] test_revert_setAssetSources_inconsistentParams() (gas: 898200)
[PASS] test_revert_setAssetSources_wrongCaller() (gas: 24207)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 29.63ms (2.04ms CPU time)

Ran 7 tests for tests/utils/AaveSetters.t.sol:AaveSettersTest
[PASS] test_setATokenBalance() (gas: 41767)
[PASS] test_setATokenTotalSupply() (gas: 38191)
[PASS] test_setLastUpdateTimestamp() (gas: 61267)
[PASS] test_setLiquidityIndex() (gas: 59946)
[PASS] test_setVTokenBalance() (gas: 41901)
[PASS] test_setVTokenTotalSupply() (gas: 38200)
[PASS] test_setVariableBorrowIndex() (gas: 59989)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 29.44ms (1.04ms CPU time)

Ran 5 tests for tests/deployments/AaveV3BatchDeployment.t.sol:AaveV3BatchDeployment
[PASS] testAaveV3BatchDeploy() (gas: 55288789)
[PASS] testAaveV3BatchDeploymentCheck() (gas: 63503888)
[PASS] testAaveV3Batch_reuseIncentivesProxy() (gas: 54787360)
[PASS] testAaveV3L2BatchDeploymentCheck() (gas: 65295562)
[PASS] testAaveV3TreasuryPartnerBatchDeploymentCheck() (gas: 64013166)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 98.05ms (93.20ms CPU time)

Ran 12 tests for tests/deployments/AaveV3BatchTests.t.sol:AaveV3BatchTests
[PASS] test0AaveV3SetupDeployment() (gas: 5310820)
[PASS] test10StaticATokenDeployment() (gas: 6676156)
[PASS] test1AaveV3GettersDeployment() (gas: 7429906)
[PASS] test2AaveV3PoolDeployment() (gas: 8348193)
[PASS] test3AaveV3L2PoolDeployment() (gas: 8608764)
[PASS] test4PeripheralsRelease() (gas: 7071756)
[PASS] test5MiscDeployment() (gas: 844259)
[PASS] test6ParaswapRelease() (gas: 5160256)
[PASS] test7SetupMarket() (gas: 2645909)
[PASS] test8TokensMarket() (gas: 3883791)
[PASS] test9ConfigEngineDeployment() (gas: 7374125)
[PASS] testAaveV3FullBatchOrchestration() (gas: 55286028)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 21.29ms (11.66ms CPU time)

Ran 23 tests for tests/extensions/v3-config-engine/AaveV3ConfigEngineTest.t.sol:AaveV3ConfigEngineTest
[PASS] testAssetEModeUpdates() (gas: 2780720)
[PASS] testBorrowUpdatesNoChange() (gas: 2446529)
[PASS] testBorrowsUpdates() (gas: 2515307)
[PASS] testCapsUpdate() (gas: 2456281)
[PASS] testCollateralUpdateCorrectBonus() (gas: 2472421)
[PASS] testCollateralUpdateLtZeroDebtCeilingShouldRevert() (gas: 990631)
[PASS] testCollateralUpdateLtZeroLiqProtocolFeeOnly() (gas: 2592220)
[PASS] testCollateralUpdateWrongBonus() (gas: 798200)
[PASS] testCollateralsUpdates() (gas: 2472232)
[PASS] testCollateralsUpdatesNoChange() (gas: 2444614)
[PASS] testCollateralsUpdatesNoChangeShouldNotEmit() (gas: 803801)
[PASS] testEModeCategoryCreation() (gas: 1241659)
[PASS] testEModeCategoryUpdates() (gas: 2601597)
[PASS] testEModeCategoryUpdatesNoChange() (gas: 2603238)
[PASS] testEModeCategoryUpdatesNoChangeShouldNotEmit() (gas: 878152)
[PASS] testEModeCategoryUpdatesWrongBonus() (gas: 868390)
[PASS] testListingWithEModeCategoryCreation() (gas: 5878018)
[PASS] testListings() (gas: 5588749)
[PASS] testListingsCustom() (gas: 9411277)
[PASS] testListingsCustomWithEModeCategoryCreation() (gas: 9701269)
[PASS] testPriceFeedUpdateInvalidDecimalsShouldRevert() (gas: 870327)
[PASS] testPriceFeedsUpdates() (gas: 2524320)
[PASS] testRateStrategiesUpdates() (gas: 2511229)
Suite result: ok. 23 passed; 0 failed; 0 skipped; finished in 248.46ms (327.63ms CPU time)

Ran 2 tests for tests/deployments/AaveV3PermissionsTest.t.sol:AaveV3PermissionsTest
[PASS] testCheckPermissions() (gas: 53629730)
[PASS] testCheckPermissionsTreasuryPartner() (gas: 54121289)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 37.93ms (33.83ms CPU time)

Ran 6 tests for tests/misc/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.t.sol:InitializableImmutableAdminUpgradeabilityProxyTests
[PASS] test_proxy_fallback() (gas: 600016)
[PASS] test_proxy_upgradeTo() (gas: 622088)
[PASS] test_proxy_upgradeToAndCall() (gas: 627937)
[PASS] test_proxy_upgradeToAndCall_initialize() (gas: 597095)
[PASS] test_reverts_upgradeToAndCall_notAdmin() (gas: 602961)
[PASS] test_reverts_upgradeTo_notAdmin() (gas: 600781)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 2.58ms (1.43ms CPU time)

Ran 13 tests for tests/misc/rates/RateStrategy.calculateRates.t.sol:RateStrategyCalculateRatesTests
[PASS] test_calculate_rates_100_percent_usage() (gas: 47885)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_bps_usage() (gas: 48004)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_percent_usage() (gas: 90655)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_percent_usage_and_50_percent_supply_usage_due_minted_tokens() (gas: 46210)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_percent_usage_and_80_bps_supply_usage_due_minted_tokens() (gas: 46232)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_above_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 123316, ~: 124078)
Logs:
  Bound result 1615
  Bound result 430
  Bound result 974593720697564854609349958
  Bound result 719778618505502566469542741
  Bound result 653656398497

[PASS] test_calculate_rates_below_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 116320, ~: 120332)
Logs:
  Bound result 150
  Bound result 614
  Bound result 124
  Bound result 51
  Bound result 65536

[PASS] test_calculate_rates_below_op_usage_when_no_debt((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 74832, ~: 75364)
Logs:
  Bound result 5966
  Bound result 20

[PASS] test_calculate_rates_empty_reserve((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 43494, ~: 43416)
Logs:
  Bound result 6190
  Bound result 0

[PASS] test_calculate_rates_when_not_using_virtual_valance((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 67491, ~: 68630)
Logs:
  Bound result 2200
  Bound result 6

[PASS] test_calculate_rates_when_total_debt_0((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 67500, ~: 68639)
Logs:
  Bound result 2200
  Bound result 6

[PASS] test_fuzz_calculate_rates_80_percent_usage_added_and_virtual_equal(uint256) (runs: 1000, μ: 32798, ~: 33021)
Logs:
  Bound result 6356996051364996

[PASS] test_zero_rates_strategy_calculate_rates() (gas: 18549)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 4.47s (4.44s CPU time)

Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTests
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 52119, ~: 52029)
Logs:
  Bound result 4487
  Bound result 15248

[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 25933, ~: 25843)
Logs:
  Bound result 4487
  Bound result 15248

[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 29079, ~: 29184)
Logs:
  Bound result 9816
  Bound result 2

[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22028, ~: 22028)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22076, ~: 22076)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26789, ~: 26699)
Logs:
  Bound result 4487
  Bound result 15248

[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23308, ~: 23308)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 2.68s (2.65s CPU time)

Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTestsOverride
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 51498, ~: 51412)
Logs:
  Bound result 8771
  Bound result 27963

[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 25296, ~: 25210)
Logs:
  Bound result 8771
  Bound result 27963

[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 28467, ~: 28559)
Logs:
  Bound result 1018
  Bound result 1417560315

[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21403, ~: 21403)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21451, ~: 21451)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26160, ~: 26074)
Logs:
  Bound result 8771
  Bound result 27963

[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22683, ~: 22683)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 2.43s (2.37s CPU time)

Ran 53 tests for tests/protocol/pool/L2Pool.t.sol:L2PoolTests
[PASS] test_approvePositionManager_false() (gas: 42552)
[PASS] test_approvePositionManager_true() (gas: 48988)
[PASS] test_dropReserve() (gas: 96087)
[PASS] test_getBorrowLogic() (gas: 13674)
[PASS] test_getFlashLoanLogic() (gas: 13719)
[PASS] test_getLiquidationLogic() (gas: 13783)
[PASS] test_getPoolLogic() (gas: 13693)
[PASS] test_getSupplyLogic() (gas: 13715)
[PASS] test_getVirtualUnderlyingBalance() (gas: 358976)
[PASS] test_getters_getUserAccountData() (gas: 715099)
[PASS] test_l2_borrow() (gas: 413021)
[PASS] test_l2_liquidationCall() (gas: 1023508)
[PASS] test_l2_partial_withdraw() (gas: 300127)
[PASS] test_l2_repay() (gas: 436867)
[PASS] test_l2_repay_atokens() (gas: 443132)
[PASS] test_l2_repay_permit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 607302, ~: 608001)
Logs:
  Bound result 1023
  Bound result 91
  Bound result 18
  Bound result 13

[PASS] test_l2_set_user_collateral() (gas: 247432)
[PASS] test_l2_supply() (gas: 248693)
[PASS] test_l2_supply_permit(uint128,uint120) (runs: 1000, μ: 413933, ~: 413937)
[PASS] test_l2_withdraw() (gas: 237422)
[PASS] test_mintToTreasury() (gas: 796749)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 801337)
[PASS] test_noop_approvePositionManager_true_when_already_is_activated() (gas: 54177)
[PASS] test_noop_setUserUseReserveAsCollateralOnBehalfOf_true_when_already_is_activated() (gas: 426839)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 257979)
[PASS] test_pool_defaultValues() (gas: 4964064)
[PASS] test_renouncePositionManager() (gas: 38418)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81765, ~: 82014)
Logs:
  Bound result 49268421

[PASS] test_resetIsolationModeTotalDebt() (gas: 840231)
[PASS] test_revert_setUserEModeOnBehalfOf_not_position_manager(address) (runs: 1000, μ: 212826, ~: 212826)
[PASS] test_reverts_impl_initialize() (gas: 4377678)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 24928, ~: 24928)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 98872, ~: 98872)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4477931)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 955233)
[PASS] test_reverts_setUserUseReserveAsCollateralOnBehalfOf_caller_not_position_manager(address) (runs: 1000, μ: 405731, ~: 405731)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 705733)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 274285)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 186409)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 265364)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 50123)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 894962)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 36626, ~: 36713)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 26634, ~: 26634)
[PASS] test_setUserEModeOnBehalfOf() (gas: 244720)
[PASS] test_setUserEmode() (gas: 218251)
[PASS] test_setUserEmode_twice() (gas: 356590)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 961592)
[PASS] test_setUserUseReserveAsCollateralOnBehalfOf_false() (gas: 393837)
[PASS] test_setUserUseReserveAsCollateralOnBehalfOf_true() (gas: 420945)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 219597)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 252094)
[PASS] test_updateBridgeProtocolFee() (gas: 231)
Suite result: ok. 53 passed; 0 failed; 0 skipped; finished in 8.71s (8.68s CPU time)

Ran 11 tests for tests/protocol/libraries/math/MathUtils.t.sol:MathUtilsTests
[PASS] testMulDivCeil_NoRemainder() (gas: 3231)
[PASS] testMulDivCeil_RevertOnDivByZero() (gas: 3150)
[PASS] testMulDivCeil_RevertOnOverflow() (gas: 3166)
[PASS] testMulDivCeil_WithRemainder() (gas: 3230)
[PASS] testMulDivCeil_ZeroAOrB() (gas: 3779)
[PASS] test_calculateCompoundInterest_1() (gas: 4825)
[PASS] test_calculateCompoundInterest_2() (gas: 5264)
[PASS] test_calculateCompoundInterest_edge() (gas: 4972)
[PASS] test_calculateCompoundInterest_shouldNotOverflow() (gas: 4038)
[PASS] test_calculateLinearInterest() (gas: 4652)
[PASS] test_constants() (gas: 3159)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 3.19ms (261.69µs CPU time)

Ran 17 tests for tests/extensions/paraswap-adapters/ParaswapAdapters.t.sol:ParaswapAdaptersTest
[PASS] test_rescueTokens() (gas: 196269)
[PASS] test_reverts_offset_out_of_range_swap_liquidity_permit_flashloan() (gas: 727877)
[PASS] test_reverts_swapAndDeposit_offset() (gas: 792777)
[PASS] test_reverts_swapAndRepay_offset_out_of_range() (gas: 888494)
[PASS] test_reverts_withdrawAndSwap_offset_out_of_range() (gas: 773205)
[PASS] test_swapAndDeposit() (gas: 873905)
[PASS] test_swapAndDeposit_permit() (gas: 916397)
[PASS] test_swapAndRepay() (gas: 960726)
[PASS] test_swapAndRepay_flashloan() (gas: 1024450)
[PASS] test_swapAndRepay_flashloan_permit() (gas: 1062484)
[PASS] test_swapAndRepay_no_collateral_leftovers() (gas: 1010111)
[PASS] test_swapAndRepay_permit() (gas: 1003067)
[PASS] test_swap_liquidity_flashloan() (gas: 954376)
[PASS] test_swap_liquidity_permit_flashloan() (gas: 992302)
[PASS] test_withdrawAndSwap() (gas: 790696)
[PASS] test_withdrawAndSwap_permit() (gas: 829195)
[PASS] test_withdrawSwapAdapter_reverts_flashloan() (gas: 525777)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 67.30ms (38.02ms CPU time)

Ran 11 tests for tests/protocol/pool/Pool.Liquidations.CloseFactor.t.sol:PoolLiquidationCloseFactorTests
[PASS] test_fuzz_hf_gt_095_supply_gt_threshold_closeFactorShouldBe50(uint256,uint256) (runs: 1000, μ: 835224, ~: 835298)
Logs:
  Bound result 9997777777777902777779
  Bound result 960000200000000032

[PASS] test_fuzz_hf_gt_095_supply_lt_threshold_closeFactorShouldBe100(uint256,uint256) (runs: 1000, μ: 800525, ~: 800587)
Logs:
  Bound result 1101111111236111112
  Bound result 960000200000000032

[PASS] test_fuzz_hf_lte_095_supply_gt_threshold_closeFactorShouldBe100(uint256,uint256) (runs: 1000, μ: 797949, ~: 795464)
Logs:
  Bound result 998888888889013888890
  Bound result 940000200000000001

[PASS] test_hf_gt_095_borrow_gt_threshold_collateral_lt_threshold_closeFactorShouldBe100() (gas: 1047682)
[PASS] test_hf_gt_095_supply_gt_threshold_closeFactorShouldBe50() (gas: 833907)
Logs:
  Bound result 100000000000000000000
  Bound result 970000000000000000

[PASS] test_hf_gt_095_supply_lt_threshold_closeFactorShouldBe100() (gas: 799108)
Logs:
  Bound result 500000000000000000
  Bound result 970000000000000000

[PASS] test_hf_helper(uint256) (runs: 1000, μ: 534215, ~: 534249)
Logs:
  Bound result 348961060663215665

[PASS] test_hf_lte_095_supply_gt_threshold_closeFactorShouldBe100() (gas: 799239)
Logs:
  Bound result 100000000000000000000
  Bound result 940000000000000000

[PASS] test_liquidationdataprovider_edge_range() (gas: 955020)
[PASS] test_liquidationdataprovider_edge_range_reverse() (gas: 1008725)
[PASS] test_shouldRevertIfCloseFactorIs100ButCollateralIsBelowThreshold() (gas: 803532)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 11.20s (11.17s CPU time)

Ran 17 tests for tests/protocol/libraries/math/PercentageMath.t.sol:PercentageMathTests
[PASS] testPercentDivCeil_Exact() (gas: 3267)
[PASS] testPercentDivCeil_RevertOnDivByZero() (gas: 3145)
[PASS] testPercentDivCeil_RevertOnOverflow() (gas: 3178)
[PASS] testPercentDivCeil_WithCeilNeeded() (gas: 3244)
[PASS] testPercentMulCeil_Exact() (gas: 3250)
[PASS] testPercentMulCeil_RevertOnOverflow() (gas: 3212)
[PASS] testPercentMulCeil_WithRoundingUp() (gas: 3292)
[PASS] testPercentMulCeil_ZeroValueOrPercent() (gas: 3770)
[PASS] testPercentMulFloor_Exact() (gas: 3200)
[PASS] testPercentMulFloor_RevertOnOverflow() (gas: 3147)
[PASS] testPercentMulFloor_WithTruncation() (gas: 3243)
[PASS] testPercentMulFloor_ZeroInputs() (gas: 3673)
[PASS] test_constants() (gas: 4281)
[PASS] test_percentDiv() (gas: 4274)
[PASS] test_percentDiv_fuzz(uint256,uint256) (runs: 1000, μ: 3862, ~: 3893)
[PASS] test_percentMul() (gas: 4193)
[PASS] test_percentMul_fuzz(uint256,uint256) (runs: 1000, μ: 3631, ~: 3726)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 98.50ms (97.19ms CPU time)

Ran 18 tests for tests/protocol/pool/Pool.Borrow.t.sol:PoolBorrowTests
[PASS] test_borrow_variable_in_isolation() (gas: 584467)
[PASS] test_reverts_borrow_DebtCeilingExceeded() (gas: 433517)
[PASS] test_reverts_borrow_InconsistentEModeCategory() (gas: 403346)
[PASS] test_reverts_borrow_cap() (gas: 291017)
[PASS] test_reverts_borrow_collateral_balance_zero() (gas: 219233)
[PASS] test_reverts_borrow_collateral_can_not_cover() (gas: 404785)
[PASS] test_reverts_borrow_debt_ceiling() (gas: 679287)
[PASS] test_reverts_borrow_hf_lt_1() (gas: 573868)
[PASS] test_reverts_borrow_invalidAmount() (gas: 61923)
[PASS] test_reverts_borrow_not_borrowable_isolation() (gas: 416080)
[PASS] test_reverts_borrow_reserveFrozen() (gas: 1168184)
[PASS] test_reverts_borrow_reserveInactive() (gas: 135807)
[PASS] test_reverts_borrow_reservePaused() (gas: 99971)
[PASS] test_reverts_borrow_sentinel_oracle_down() (gas: 303844)
[PASS] test_reverts_borrow_sioled_borrowing_violation() (gas: 673117)
[PASS] test_reverts_deprecated_stable_borrow() (gas: 391187)
[PASS] test_reverts_variable_borrow_transferred_funds() (gas: 366565)
[PASS] test_variable_borrow() (gas: 360307)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 44.77ms (17.01ms CPU time)

Ran 15 tests for tests/misc/rates/RateStrategy.t.sol:RateStrategyBaseTests
[PASS] test_getInterestRateDataBps((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 39993, ~: 39905)
Logs:
  Bound result 403
  Bound result 1

[PASS] test_getInterestRateDataRay((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 40940, ~: 40852)
Logs:
  Bound result 403
  Bound result 1

[PASS] test_getMaxVariableBorrowRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 38412, ~: 38324)
Logs:
  Bound result 403
  Bound result 1

[PASS] test_initialization() (gas: 26143)
[PASS] test_new_DefaultReserveInterestRateStrategy_wrong_provider() (gas: 41972)
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 52058, ~: 51970)
Logs:
  Bound result 403
  Bound result 1

[PASS] test_new_SetReserveInterestRateParams_override_method((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 49266, ~: 49178)
Logs:
  Bound result 403
  Bound result 1

[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 25927, ~: 25839)
Logs:
  Bound result 403
  Bound result 1

[PASS] test_overflow_liquidity_rates() (gas: 57891)
[PASS] test_overflow_variable_rates() (gas: 645446)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 33629, ~: 33629)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 30448, ~: 30448)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 30524, ~: 30524)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 27023, ~: 27023)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2(uint16,uint32,uint32,uint32) (runs: 1000, μ: 32463, ~: 32463)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 3.98s (3.96s CPU time)

Ran 15 tests for tests/extensions/RevenueSplitter.t.sol:RevenueSplitterTest
[PASS] test_constructor() (gas: 15303)
[PASS] test_constructor_fuzzing(uint16) (runs: 1000, μ: 457649, ~: 457649)
[PASS] test_constructor_revert_invalid_split_percentage() (gas: 174509)
[PASS] test_splitFund_oneToken() (gas: 410660)
[PASS] test_splitFund_reverts_randomAddress() (gas: 51282)
[PASS] test_splitFund_zeroAmount_noOp() (gas: 371538)
[PASS] test_splitFund_zeroFunds_noOp() (gas: 50848)
[PASS] test_splitFund_zeroTokens_noOp() (gas: 370457)
[PASS] test_splitFunds_fixed() (gas: 447612)
[PASS] test_splitFunds_fuzz_max(uint256,uint256) (runs: 1000, μ: 448208, ~: 449784)
[PASS] test_splitFunds_fuzz_realistic(uint256,uint256) (runs: 1000, μ: 446682, ~: 448244)
[PASS] test_splitNativeFund_fixedAmount() (gas: 100484)
[PASS] test_splitNativeFund_walletNotAcceptingFunds() (gas: 537581)
[PASS] test_splitNativeFund_zeroAmount_noOp() (gas: 29728)
[PASS] test_splitNativeFunds_fuzz_max(uint256) (runs: 1000, μ: 100455, ~: 101899)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 2.92s (2.92s CPU time)

Ran 18 tests for tests/rewards/RewardsController.t.sol:RewardsControllerTest
[PASS] test_accrueRewards() (gas: 914023)
[PASS] test_claimAllRewards() (gas: 868802)
[PASS] test_claimAllRewardsOnBehalf() (gas: 902495)
[PASS] test_claimAllRewardsToSelf() (gas: 868429)
[PASS] test_claimRewards() (gas: 865735)
[PASS] test_claimRewardsOnBehalf() (gas: 904215)
[PASS] test_claimRewardsToSelf() (gas: 865414)
[PASS] test_claimRewards_partial() (gas: 866050)
[PASS] test_claimRewards_zero() (gas: 619939)
[PASS] test_claimRewards_zero_with_rewards() (gas: 626431)
[PASS] test_configureAssets() (gas: 601049)
[PASS] test_initialize_no_op() (gas: 3614302)
[PASS] test_new_RewardsController() (gas: 3610338)
[PASS] test_setClaimer() (gas: 58207)
[PASS] test_setDistributionEnd() (gas: 616897)
[PASS] test_setEmissionPerSecond() (gas: 620924)
[PASS] test_setRewardOracle() (gas: 694643)
[PASS] test_setTransferStrategy_PullRewardsTransferStrategy() (gas: 880501)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 53.34ms (21.59ms CPU time)

Ran 5 tests for tests/rewards/StakedTokenTransferStrategy.t.sol:StakedTokenTransferStrategyTest
[PASS] test_dropApproval() (gas: 18975)
[PASS] test_emergencyTransfer() (gas: 211756)
[PASS] test_getters() (gas: 18719)
[PASS] test_performTransfer() (gas: 22017)
[PASS] test_renewApproval() (gas: 23091)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 30.72ms (1.64ms CPU time)

Ran 3 tests for tests/gas/StataToken.gas.t.sol:StataToken_gas_Tests
[PASS] test_claimRewards() (gas: 3034358)
[PASS] test_deposit() (gas: 779212)
[PASS] test_depositATokens() (gas: 923255)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 44.06ms (6.93ms CPU time)

Ran 2 tests for tests/extensions/stata-token/StataTokenV2Getters.sol:StataTokenV2GettersTest
[PASS] test_getters() (gas: 69883)
[PASS] test_initializeShouldRevert() (gas: 21681)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 28.67ms (220.52µs CPU time)

Ran 10 tests for tests/extensions/stata-token/StataTokenV2Pausable.t.sol:StataTokenV2PausableTest
[PASS] test_canPause() (gas: 26789)
[PASS] test_canPause_shouldReturnFalse(address) (runs: 1000, μ: 27282, ~: 27282)
[PASS] test_claimingRewards_shouldRevert() (gas: 520120)
[PASS] test_deposit_shouldRevert() (gas: 467618)
[PASS] test_mint_shouldRevert() (gas: 471639)
[PASS] test_redeem_shouldRevert() (gas: 539652)
[PASS] test_setPaused_shouldRevertForInvalidCaller(address) (runs: 1000, μ: 30340, ~: 30340)
[PASS] test_setPaused_shouldSucceedForOwner() (gas: 53839)
[PASS] test_transfer_shouldRevert() (gas: 518036)
[PASS] test_withdraw_shouldRevert() (gas: 535484)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 417.56ms (390.54ms CPU time)

Ran 3 tests for tests/extensions/stata-token/StataTokenV2Permit.sol:StataTokenV2PermitTest
[PASS] test_permit() (gas: 89789)
[PASS] test_permit_expired() (gas: 37844)
[PASS] test_permit_invalidSigner() (gas: 66419)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 33.60ms (1.16ms CPU time)

Ran 17 tests for tests/extensions/stata-token/ERC20AaveLMUpgradable.t.sol:ERC20AaveLMUpgradableTest
[PASS] test_7201() (gas: 3355)
[PASS] test_claimRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 839004, ~: 798663)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_claimRewardsOnBehalfOf_self(uint256,uint32,uint88,uint32) (runs: 1000, μ: 839219, ~: 798878)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_claimRewardsOnBehalfOf_shouldRevertForInvalidClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 772746, ~: 774264)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_claimRewardsOnBehalfOf_validClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 871603, ~: 831261)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_claimRewardsToSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 838918, ~: 798577)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_claimableRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 773604, ~: 775178)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_collectAndUpdateRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 818288, ~: 794958)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_correctAccountingForDelayedRegistration() (gas: 823792)
[PASS] test_getReferenceAsset() (gas: 12902)
[PASS] test_isRegisteredRewardToken() (gas: 633916)
[PASS] test_noRewardsInitialized() (gas: 39220)
[PASS] test_noopWhenNotInitialized() (gas: 52782)
[PASS] test_rewardTokens() (gas: 632057)
[PASS] test_transfer(uint256,uint32,uint88,uint32,address,uint256) (runs: 1000, μ: 848954, ~: 864680)
Logs:
  Bound result 79228162513264337593543960486
  Bound result 18194
  Bound result 10414
  Bound result 5415

[PASS] test_transfer_toSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 806619, ~: 799500)
Logs:
  Bound result 5238445701617706168708
  Bound result 1
  Bound result 1232
  Bound result 5153615666495117156

[PASS] test_zeroIncentivesController() (gas: 37689)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 16.23s (16.20s CPU time)

Ran 4 tests for tests/extensions/stata-token/StataTokenV2Rescuable.sol:StataTokenV2RescuableTest
[PASS] test_rescuable_shouldNotCauseInsolvency(uint256,uint256) (runs: 1000, μ: 735970, ~: 735974)
[PASS] test_rescuable_shouldRevertForInvalidCaller() (gas: 189988)
[PASS] test_rescuable_shouldTransferAssetsToCollector() (gas: 216923)
[PASS] test_rescuable_shouldWorkForAToken() (gas: 414228)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 2.82s (2.79s CPU time)

Ran 26 tests for tests/protocol/pool/Pool.Liquidations.t.sol:PoolLiquidationTests
[PASS] test_deficit_increased_after_liquidate_bad_debt() (gas: 803222)
[PASS] test_full_liquidate_atokens_edgecase_collateral_not_enough_to_cover_fee() (gas: 436776)
[PASS] test_full_liquidate_atokens_multiple_variable_borrows() (gas: 966616)
[PASS] test_full_liquidate_multiple_supplies_and_variable_borrows() (gas: 1116243)
[PASS] test_full_liquidate_multiple_variable_borrows() (gas: 986129)
[PASS] test_liquidate_borrow_bad_debt() (gas: 812382)
[PASS] test_liquidate_borrow_burn_multiple_assets_bad_debt() (gas: 1146906)
[PASS] test_liquidate_emode_position_ltzero_outside_emode() (gas: 1082072)
[PASS] test_liquidate_emode_position_without_emode_oracle() (gas: 1045846)
[PASS] test_liquidate_isolated_position() (gas: 903884)
[PASS] test_liquidate_variable_borrow_no_fee() (gas: 849608)
[PASS] test_liquidate_variable_borrow_repro() (gas: 1030992)
[PASS] test_liquidate_variable_borrow_same_collateral_and_borrow() (gas: 671285)
[PASS] test_liquidation_when_grace_period_disabled(uint40) (runs: 1000, μ: 852280, ~: 852601)
Logs:
  Bound result 13829

[PASS] test_liquidation_with_liquidation_grace_period_collateral_active(uint40) (runs: 1000, μ: 1009239, ~: 1012329)
Logs:
  Bound result 3442

[PASS] test_liquidation_with_liquidation_grace_period_debt_active(uint40) (runs: 1000, μ: 1009809, ~: 1012913)
Logs:
  Bound result 3442

[PASS] test_liquidation_with_liquidation_grace_period_debt_collateral_active(uint40) (runs: 1000, μ: 1022975, ~: 1026153)
Logs:
  Bound result 3442

[PASS] test_partial_liquidate_atokens_variable_borrow() (gas: 863802)
[PASS] test_partial_liquidate_variable_borrow() (gas: 848142)
[PASS] test_reverts_liquidation_collateral_not_active() (gas: 622824)
[PASS] test_reverts_liquidation_hf_gt_liquidation_threshold() (gas: 446121)
[PASS] test_reverts_liquidation_invalid_borrow() (gas: 580979)
[PASS] test_reverts_liquidation_oracle_sentinel_on() (gas: 341431)
[PASS] test_reverts_liquidation_reserveInactive() (gas: 174783)
[PASS] test_reverts_liquidation_reservePaused() (gas: 141748)
[PASS] test_self_liquidate_position_shouldRevert() (gas: 667191)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 14.02s (13.99s CPU time)

Ran 22 tests for tests/gas/Pool.Operations.gas.t.sol:PoolOperations_gas_Tests
[PASS] test_borrow() (gas: 1018985)
[PASS] test_borrow_onBehalfOf() (gas: 1100855)
[PASS] test_flashLoanSimple() (gas: 683444)
[PASS] test_flashLoan_with_one_asset() (gas: 812784)
[PASS] test_flashLoan_with_one_asset_with_borrowing() (gas: 1334756)
[PASS] test_flashLoan_with_two_assets() (gas: 1186053)
[PASS] test_flashLoan_with_two_assets_with_borrowing() (gas: 2216061)
[PASS] test_liquidationCall_deficit() (gas: 1515745)
[PASS] test_liquidationCall_deficitInAdditionalReserve() (gas: 1877433)
[PASS] test_liquidationCall_full() (gas: 1515812)
[PASS] test_liquidationCall_partial() (gas: 1501832)
[PASS] test_liquidationCall_receive_ATokens_full() (gas: 1486873)
[PASS] test_liquidationCall_receive_ATokens_partial() (gas: 1472657)
[PASS] test_mintToTreasury_one_asset() (gas: 1064432)
[PASS] test_mintToTreasury_one_asset_zero_amount() (gas: 46569)
[PASS] test_mintToTreasury_two_assets() (gas: 2142876)
[PASS] test_mintToTreasury_two_assets_zero_amount() (gas: 54137)
[PASS] test_repay() (gas: 1457972)
[PASS] test_repay_with_ATokens() (gas: 1300653)
[PASS] test_supply() (gas: 2070893)
[PASS] test_withdraw() (gas: 879283)
[PASS] test_withdraw_with_active_borrows() (gas: 1027917)
Suite result: ok. 22 passed; 0 failed; 0 skipped; finished in 81.73ms (46.21ms CPU time)

Ran 3 tests for tests/gas/Pool.OperationsComposition.gas.t.sol:PoolOperationsComposition_gas_Tests
[PASS] test_batchLiquidation() (gas: 2434669)
[PASS] test_repayAndWithdraw() (gas: 1439141)
[PASS] test_supplyAndBorrow() (gas: 730974)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 42.77ms (8.62ms CPU time)

Ran 18 tests for tests/protocol/tokenization/VariableDebtToken.t.sol:VariableDebtTokenEventsTests
[PASS] test_balanceOf() (gas: 230803)
[PASS] test_cancel_delegationWithSig() (gas: 95528)
[PASS] test_delegationWithSig() (gas: 90870)
[PASS] test_initialize_VariableDebtToken((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3437774, ~: 3437661)
Logs:
  Bound result 23

[PASS] test_mint_variableDebt_caller_alice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3511217, ~: 3511104)
Logs:
  Bound result 23

[PASS] test_mint_variableDebt_caller_bob_onBehalf_alice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3524439, ~: 3524326)
Logs:
  Bound result 23

[PASS] test_new_VariableDebtToken_implementation() (gas: 1583698)
[PASS] test_partial_burn_variableDebt((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3526922, ~: 3526809)
Logs:
  Bound result 23

[PASS] test_renounceDelegation() (gas: 46560)
[PASS] test_reverts_OperationNotSupported() (gas: 1601746)
[PASS] test_reverts_bad_expiration_delegationWithSig() (gas: 29246)
[PASS] test_reverts_bad_nonce_delegationWithSig() (gas: 104437)
[PASS] test_reverts_initialize_pool_do_not_match((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2774042, ~: 2773968)
Logs:
  Bound result 23

[PASS] test_reverts_zero_address_delegationWithSig() (gas: 28637)
[PASS] test_scaledBalanceOf() (gas: 286064)
[PASS] test_totalScaledSupply() (gas: 326478)
[PASS] test_totalSupply() (gas: 326429)
[PASS] test_total_burn_variableDebt((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3526815, ~: 3526702)
Logs:
  Bound result 23

Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 9.18s (9.15s CPU time)

Ran 5 tests for tests/protocol/tokenization/VariableDebtTokenRounding.t.sol:VariableDebtTokenRoundingTest
[PASS] test_balanceShouldRoundUp() (gas: 48617)
[PASS] test_borrowShouldRoundUp() (gas: 236272)
[PASS] test_creditDelegationAllowance(uint256) (runs: 1000, μ: 93975, ~: 93683)
Logs:
  Bound result 137962031134782432780546

[PASS] test_repayShouldRoundDown() (gas: 346262)
[PASS] test_totalSupplyShouldRoundUp() (gas: 44456)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 416.70ms (388.76ms CPU time)

Ran 3 tests for tests/protocol/tokenization/VariableDebtToken_MintOnBehalf.t.sol:VariableDebtToken_MintOnBehalfTests
[PASS] test_mint(uint128,uint256) (runs: 1000, μ: 84091, ~: 83694)
Logs:
  Bound result 99999000000000000000000000009901
  Bound result 1000000000000096374

[PASS] test_mint_shouldRevertIfSenderInsufficientAllowance() (gas: 49042)
[PASS] test_mint_shouldRevertIfSenderIsNotApproved() (gas: 22365)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 392.68ms (364.43ms CPU time)

Ran 30 tests for tests/protocol/libraries/math/WadRayMath.t.sol:WadRayMathTests
[PASS] testRayDivCeil_Exact() (gas: 3273)
[PASS] testRayDivCeil_RevertOnDivByZero() (gas: 3122)
[PASS] testRayDivCeil_RevertOnOverflow() (gas: 3179)
[PASS] testRayDivCeil_WithCeil() (gas: 3283)
[PASS] testRayDivCeil_ZeroNumerator() (gas: 3236)
[PASS] testRayDivFloor_Exact() (gas: 3289)
[PASS] testRayDivFloor_RevertOnDivByZero() (gas: 3188)
[PASS] testRayDivFloor_RevertOnOverflow() (gas: 3135)
[PASS] testRayDivFloor_Truncation() (gas: 3279)
[PASS] testRayDivFloor_ZeroNumerator() (gas: 3254)
[PASS] testRayMulCeil_Exact() (gas: 3225)
[PASS] testRayMulCeil_RevertOnOverflow() (gas: 3213)
[PASS] testRayMulCeil_WithCeil() (gas: 3220)
[PASS] testRayMulCeil_Zero() (gas: 3781)
[PASS] testRayMulFloor_Exact() (gas: 3290)
[PASS] testRayMulFloor_RevertOnOverflow() (gas: 3147)
[PASS] testRayMulFloor_Truncation() (gas: 3216)
[PASS] testRayMulFloor_Zero() (gas: 3708)
[PASS] test_constants() (gas: 5771)
[PASS] test_rayDiv() (gas: 4844)
[PASS] test_rayMul() (gas: 4283)
[PASS] test_rayToWad() (gas: 4217)
[PASS] test_rayToWad_fuzz(uint256) (runs: 1000, μ: 3937, ~: 3885)
[PASS] test_wadDiv() (gas: 4835)
[PASS] test_wadDiv_fuzzing(uint256,uint256) (runs: 1000, μ: 3785, ~: 3850)
[PASS] test_wadMul() (gas: 4195)
[PASS] test_wadMul_edge() (gas: 4230)
[PASS] test_wadMul_fuzzing(uint256,uint256) (runs: 1000, μ: 3718, ~: 3814)
[PASS] test_wadToRay() (gas: 4160)
[PASS] test_wadToRay_fuzz(uint256) (runs: 1000, μ: 3884, ~: 3947)
Suite result: ok. 30 passed; 0 failed; 0 skipped; finished in 189.82ms (188.43ms CPU time)

Ran 15 tests for tests/helpers/WrappedTokenGateway.t.sol:WrappedTokenGatewayTests
[PASS] test_borrowDelegateApprove_repay() (gas: 455557)
[PASS] test_borrowVariableDebtWeth_repayWithEth() (gas: 787268)
[PASS] test_borrowVariableDebtWeth_repayWithEth_mismatchedValues() (gas: 780112)
[PASS] test_depositNativeEthInPool() (gas: 252322)
[PASS] test_fallback_revert() (gas: 10080)
[PASS] test_getWETHAddress() (gas: 10589)
[PASS] test_ownerCanRescueEth() (gas: 25215)
[PASS] test_ownerCanRescueTokens() (gas: 96942)
[PASS] test_sendEthFallback_revert() (gas: 16724)
[PASS] test_sendEth_revert() (gas: 16601)
[PASS] test_withdrawEth_full() (gas: 355772)
[PASS] test_withdrawEth_partial() (gas: 388365)
[PASS] test_withdrawEth_permit() (gas: 418135)
[PASS] test_withdrawEth_permit_frontrunRegression() (gas: 419062)
[PASS] test_withdrawEth_permit_full() (gas: 382337)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 48.99ms (16.73ms CPU time)

Ran 1 test for tests/gas/WrappedTokenGatewayV3.gas.t.sol:WrappedTokenGatewayV3_gas_Tests
[PASS] test_flow() (gas: 933111)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 34.56ms (1.80ms CPU time)

Ran 11 tests for tests/protocol/pool/Pool.Withdraw.t.sol:PoolWithdrawTests
[PASS] test_Reverts_withdraw_transferred_funds() (gas: 531544)
[PASS] test_full_withdraw() (gas: 251093)
[PASS] test_full_withdraw_to() (gas: 256576)
[PASS] test_partial_withdraw() (gas: 247576)
[PASS] test_reverts_WithdrawToAToken() (gas: 239171)
[PASS] test_reverts_withdraw_hf_lt_lqt() (gas: 661444)
[PASS] test_reverts_withdraw_invalidAmount() (gas: 239198)
[PASS] test_reverts_withdraw_invalidBalance() (gas: 241267)
[PASS] test_reverts_withdraw_reserveInactive() (gas: 198917)
[PASS] test_reverts_withdraw_reservePaused() (gas: 278154)
[PASS] test_withdraw_not_enabled_as_collateral() (gas: 255536)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 37.04ms (9.60ms CPU time)

Ran 43 tests for tests/protocol/pool/Pool.t.sol:PoolTests
[PASS] test_approvePositionManager_false() (gas: 42622)
[PASS] test_approvePositionManager_true() (gas: 49054)
[PASS] test_dropReserve() (gas: 96050)
[PASS] test_getBorrowLogic() (gas: 13740)
[PASS] test_getFlashLoanLogic() (gas: 13629)
[PASS] test_getLiquidationLogic() (gas: 13674)
[PASS] test_getPoolLogic() (gas: 13759)
[PASS] test_getSupplyLogic() (gas: 13692)
[PASS] test_getVirtualUnderlyingBalance() (gas: 359003)
[PASS] test_getters_getUserAccountData() (gas: 714988)
[PASS] test_mintToTreasury() (gas: 796039)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 800628)
[PASS] test_noop_approvePositionManager_true_when_already_is_activated() (gas: 54353)
[PASS] test_noop_setUserUseReserveAsCollateralOnBehalfOf_true_when_already_is_activated() (gas: 426838)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 257711)
[PASS] test_pool_defaultValues() (gas: 4964120)
[PASS] test_renouncePositionManager() (gas: 38488)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81807, ~: 82058)
Logs:
  Bound result 49268421

[PASS] test_resetIsolationModeTotalDebt() (gas: 839096)
[PASS] test_revert_setUserEModeOnBehalfOf_not_position_manager(address) (runs: 1000, μ: 212580, ~: 212580)
[PASS] test_reverts_impl_initialize() (gas: 4377700)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 24972, ~: 24972)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 98915, ~: 98915)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4477865)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 955029)
[PASS] test_reverts_setUserUseReserveAsCollateralOnBehalfOf_caller_not_position_manager(address) (runs: 1000, μ: 405666, ~: 405666)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 705533)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 274077)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 186044)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 265111)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 50034)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 894300)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 36584, ~: 36668)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 26544, ~: 26544)
[PASS] test_setUserEModeOnBehalfOf() (gas: 244519)
[PASS] test_setUserEmode() (gas: 218115)
[PASS] test_setUserEmode_twice() (gas: 356229)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 961163)
[PASS] test_setUserUseReserveAsCollateralOnBehalfOf_false() (gas: 393819)
[PASS] test_setUserUseReserveAsCollateralOnBehalfOf_true() (gas: 420988)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 219552)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 251960)
[PASS] test_updateBridgeProtocolFee() (gas: 253)
Suite result: ok. 43 passed; 0 failed; 0 skipped; finished in 2.73s (2.70s CPU time)

Ran 22 tests for tests/protocol/configuration/PoolAddressesProvider.t.sol:PoolAddressesProviderTests
[PASS] test_PoolDataProvider_changeContract() (gas: 1526240)
[PASS] test_getter_getMarketId() (gas: 1488924)
[PASS] test_new_PoolAddressesProvider() (gas: 1498177)
[PASS] test_reverts_setAddressAsProxy_notAuth() (gas: 1502343)
[PASS] test_reverts_setAddress_noAuth() (gas: 1507539)
[PASS] test_reverts_setters_notOwner() (gas: 1505033)
[PASS] test_setACLManager_changeContract() (gas: 3067366)
[PASS] test_setACLManager_setACLAdmin() (gas: 2301622)
[PASS] test_setAddress() (gas: 1516437)
[PASS] test_setAddressAsProxy_new_proxy() (gas: 2096171)
[PASS] test_setAddressAsProxy_upgrade_proxy() (gas: 2228513)
[PASS] test_setAddress_updateAddress() (gas: 1525575)
[PASS] test_setPoolConfiguratorImpl() (gas: 6616637)
[PASS] test_setPoolConfiguratorImpl_upgrade() (gas: 11047460)
[PASS] test_setPoolDataProvider() (gas: 1516824)
[PASS] test_setPoolImpl() (gas: 7091458)
[PASS] test_setPoolImpl_upgrade() (gas: 11521750)
[PASS] test_setPriceOracle() (gas: 1516981)
[PASS] test_setPriceOracleSentinel() (gas: 1516852)
[PASS] test_setPriceOracleSentinel_changeContract() (gas: 1526317)
[PASS] test_setPriceOracle_changeContract() (gas: 1526578)
[PASS] test_setter_setMarketId() (gas: 1500043)
Suite result: ok. 22 passed; 0 failed; 0 skipped; finished in 42.97ms (11.60ms CPU time)

Ran 16 tests for tests/protocol/pool/Pool.Repay.t.sol:PoolRepayTests
[PASS] test_full_repay_borrow_variable_in_isolation() (gas: 580664)
[PASS] test_partial_repay_borrow_variable_in_isolation() (gas: 653523)
[PASS] test_repayWithATokens_full_collateral_variable_borrow() (gas: 616019)
[PASS] test_repayWithATokens_full_variable_borrow() (gas: 401761)
[PASS] test_repayWithATokens_fuzz_collateral_variable_borrow(uint256,uint32) (runs: 1000, μ: 608762, ~: 609523)
[PASS] test_repayWithATokens_shouldRevertIfUnhealthyAfterRepayment() (gas: 359896)
[PASS] test_repayWithPermit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 578972, ~: 579478)
Logs:
  Bound result 1023
  Bound result 91
  Bound result 18
  Bound result 13

[PASS] tes...*[Comment body truncated]*

@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.09%. Comparing base (f53f03c) to head (f2d947f).
⚠️ Report is 22 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #7      +/-   ##
==========================================
+ Coverage   96.57%   97.09%   +0.52%     
==========================================
  Files          75       74       -1     
  Lines        3616     3689      +73     
==========================================
+ Hits         3492     3582      +90     
+ Misses        124      107      -17     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants