@@ -75,6 +75,7 @@ abstract contract HorizonListingBaseTest is Test {
7575 uint256 debtCeiling;
7676 uint256 liqProtocolFee;
7777 IDefaultInterestRateStrategyV2.InterestRateDataRay interestRateData;
78+ uint256 initialDeposit;
7879 }
7980
8081 struct EModeCategoryParams {
@@ -106,6 +107,7 @@ abstract contract HorizonListingBaseTest is Test {
106107 function EMERGENCY_MULTISIG_ADDRESS () external view virtual returns (address );
107108 function AAVE_DAO_EXECUTOR_ADDRESS () external view virtual returns (address );
108109 function LISTING_EXECUTOR_ADDRESS () external view virtual returns (address );
110+ function DUST_BIN () external view virtual returns (address );
109111
110112 function check_permissions () internal {
111113 test_rwaATokenManager ();
@@ -248,6 +250,15 @@ abstract contract HorizonListingBaseTest is Test {
248250 'reserveTreasuryAddress '
249251 );
250252
253+ if (params.initialDeposit > 0 ) {
254+ assertEq (
255+ IERC20Detailed (aToken).balanceOf (this .DUST_BIN ()),
256+ params.initialDeposit,
257+ 'initialDeposit '
258+ );
259+ assertEq (IERC20Detailed (aToken).totalSupply (), params.initialDeposit, 'aToken totalSupply ' );
260+ }
261+
251262 address currentATokenImpl = ProxyHelpers.getInitializableAdminUpgradeabilityProxyImplementation (
252263 vm,
253264 aToken
@@ -481,7 +492,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
481492 baseVariableBorrowRate: 0.0475e27 ,
482493 variableRateSlope1: 0 ,
483494 variableRateSlope2: 0
484- })
495+ }),
496+ initialDeposit: 100e18
485497 });
486498
487499 TokenListingParams internal USDC_TOKEN_LISTING_PARAMS =
@@ -510,7 +522,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
510522 baseVariableBorrowRate: 0 ,
511523 variableRateSlope1: 0.05e27 ,
512524 variableRateSlope2: 0.25e27
513- })
525+ }),
526+ initialDeposit: 100e6
514527 });
515528
516529 TokenListingParams internal RLUSD_TOKEN_LISTING_PARAMS =
@@ -539,7 +552,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
539552 baseVariableBorrowRate: 0 ,
540553 variableRateSlope1: 0.05e27 ,
541554 variableRateSlope2: 0.25e27
542- })
555+ }),
556+ initialDeposit: 100e18
543557 });
544558
545559 TokenListingParams internal USTB_TOKEN_LISTING_PARAMS =
@@ -568,7 +582,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
568582 baseVariableBorrowRate: 0 ,
569583 variableRateSlope1: 0 ,
570584 variableRateSlope2: 0
571- })
585+ }),
586+ initialDeposit: 0
572587 });
573588
574589 EModeCategoryParams internal USTB_STABLECOINS_EMODE_PARAMS =
@@ -617,7 +632,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
617632 baseVariableBorrowRate: 0 ,
618633 variableRateSlope1: 0 ,
619634 variableRateSlope2: 0
620- })
635+ }),
636+ initialDeposit: 0
621637 });
622638
623639 EModeCategoryParams internal USCC_STABLECOINS_EMODE_PARAMS =
@@ -666,7 +682,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
666682 baseVariableBorrowRate: 0 ,
667683 variableRateSlope1: 0 ,
668684 variableRateSlope2: 0
669- })
685+ }),
686+ initialDeposit: 0
670687 });
671688
672689 EModeCategoryParams internal USYC_STABLECOINS_EMODE_PARAMS =
@@ -715,7 +732,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
715732 baseVariableBorrowRate: 0 ,
716733 variableRateSlope1: 0 ,
717734 variableRateSlope2: 0
718- })
735+ }),
736+ initialDeposit: 0
719737 });
720738
721739 EModeCategoryParams internal JTRSY_STABLECOINS_EMODE_PARAMS =
@@ -764,7 +782,8 @@ abstract contract HorizonListingMainnetTest is HorizonListingBaseTest {
764782 baseVariableBorrowRate: 0 ,
765783 variableRateSlope1: 0 ,
766784 variableRateSlope2: 0
767- })
785+ }),
786+ initialDeposit: 0
768787 });
769788
770789 EModeCategoryParams internal JAAA_STABLECOINS_EMODE_PARAMS =
@@ -888,6 +907,7 @@ contract HorizonPhaseOneListingTest is HorizonListingMainnetTest, Default {
888907 address public constant override EMERGENCY_MULTISIG_ADDRESS = EMERGENCY_MULTISIG;
889908 address public constant override AAVE_DAO_EXECUTOR_ADDRESS = AAVE_DAO_EXECUTOR;
890909 address public constant override LISTING_EXECUTOR_ADDRESS = PHASE_ONE_LISTING_EXECUTOR;
910+ address public constant override DUST_BIN = 0x31a0Ba3C2242a095dBF58A7C53751eCBd27dBA9b ;
891911
892912 address internal constant SUPERSTATE_ALLOWLIST_V2 = 0x02f1fA8B196d21c7b733EB2700B825611d8A38E5 ;
893913 uint256 internal constant SUPERSTATE_ROOT_ENTITY_ID = 1 ;
@@ -907,6 +927,10 @@ contract HorizonPhaseOneListingTest is HorizonListingMainnetTest, Default {
907927
908928 address horizonPhaseOneListing = new DeployHorizonPhaseOnePayload ().run (reportFilePath);
909929
930+ deal (GHO_ADDRESS, LISTING_EXECUTOR_ADDRESS, 100e18 );
931+ deal (USDC_ADDRESS, LISTING_EXECUTOR_ADDRESS, 100e6 );
932+ deal (RLUSD_ADDRESS, LISTING_EXECUTOR_ADDRESS, 100e18 );
933+
910934 vm.prank (EMERGENCY_MULTISIG);
911935 (bool success , ) = LISTING_EXECUTOR_ADDRESS.call (
912936 abi.encodeWithSignature (
0 commit comments