@@ -21,6 +21,7 @@ contract CrossChainTest is Test {
2121
2222 address public owner = makeAddr ("owner " );
2323 address public user = makeAddr ("user " );
24+ uint256 constant SEND_VALUE = 1e10 ;
2425
2526 CCIPLocalSimulatorFork ccipLocalSimulatorFork;
2627 RebaseToken sepoliaToken;
@@ -85,6 +86,7 @@ contract CrossChainTest is Test {
8586 .acceptAdminRole (address (arbSepoliaToken));
8687 TokenAdminRegistry (arbSepoliaNetworkDetails.tokenAdminRegistryAddress)
8788 .setPool (address (arbSepoliaToken), address (arbSepoliaPool));
89+ vm.stopPrank ();
8890 configureTokenPool (
8991 sepoliaFork,
9092 address (sepoliaPool),
@@ -99,7 +101,6 @@ contract CrossChainTest is Test {
99101 address (sepoliaPool),
100102 address (sepoliaToken)
101103 );
102- vm.stopPrank ();
103104 }
104105
105106 function configureTokenPool (
@@ -129,7 +130,6 @@ contract CrossChainTest is Test {
129130 rate: 0
130131 })
131132 });
132- vm.prank (owner);
133133 TokenPool (localPool).applyChainUpdates (chainsToAdd);
134134 }
135135
@@ -154,7 +154,12 @@ contract CrossChainTest is Test {
154154 data: "" ,
155155 tokenAmounts: tokenAmounts,
156156 feeToken: localNetworkDetails.linkAddress,
157- extraArgs: Client._argsToBytes (Client.EVMExtraArgsV1 ({gasLimit: 0 }))
157+ extraArgs: Client._argsToBytes (
158+ Client.EVMExtraArgsV2 ({
159+ gasLimit: 100_0000 ,
160+ allowOutOfOrderExecution: false
161+ })
162+ )
158163 });
159164 uint256 fee = IRouterClient (localNetworkDetails.routerAddress).getFee (
160165 remoteNetworkDetails.chainSelector,
@@ -190,4 +195,32 @@ contract CrossChainTest is Test {
190195 uint256 remoteUserInterestRate = remoteToken.getUserInterestRate (user);
191196 assertEq (localUserInterestRate, remoteUserInterestRate);
192197 }
198+
199+ function testBridgeAllTokens () public {
200+ vm.selectFork (sepoliaFork);
201+ vm.deal (user, SEND_VALUE);
202+ vm.prank (user);
203+ Vault (payable (address (vault))).deposit {value: SEND_VALUE}();
204+ assertEq (sepoliaToken.balanceOf (user), SEND_VALUE);
205+ bridgeTokens (
206+ SEND_VALUE,
207+ sepoliaFork,
208+ arbSepoliaFork,
209+ sepoliaNetworkDetails,
210+ arbSepoliaNetworkDetails,
211+ sepoliaToken,
212+ arbSepoliaToken
213+ );
214+ vm.selectFork (arbSepoliaFork);
215+ vm.warp (block .timestamp + 40 minutes);
216+ bridgeTokens (
217+ arbSepoliaToken.balanceOf (user),
218+ arbSepoliaFork,
219+ sepoliaFork,
220+ arbSepoliaNetworkDetails,
221+ sepoliaNetworkDetails,
222+ arbSepoliaToken,
223+ sepoliaToken
224+ );
225+ }
193226}
0 commit comments