feat: add single swap integration test for usv4 executor
This commit is contained in:
@@ -133,6 +133,27 @@ contract UniswapV4ExecutorTest is Test, Constants {
|
|||||||
assertTrue(USDT.balanceOf(address(uniswapV4Exposed)) == amountOut);
|
assertTrue(USDT.balanceOf(address(uniswapV4Exposed)) == amountOut);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testSingleSwapIntegration() public {
|
||||||
|
// USDE -> USDT
|
||||||
|
// Generated by the Tycho swap encoder - test_encode_uniswap_v4
|
||||||
|
bytes memory protocolData =
|
||||||
|
hex"4c9edd5852cd905f086c759e8383e09bff1e68b3dac17f958d2ee523a2206206994597c13d831ec70000000000000000000000000000000000000000000000000000000000000001015615deb798bb3e4dfa0139dfa1b3d433cc23b72f91dd7346dac17f958d2ee523a2206206994597c13d831ec7000064000001";
|
||||||
|
|
||||||
|
uint256 amountIn = 100 ether;
|
||||||
|
deal(USDE_ADDR, address(uniswapV4Exposed), amountIn);
|
||||||
|
uint256 usdeBalanceBeforePool = USDE.balanceOf(poolManager);
|
||||||
|
uint256 usdeBalanceBeforeSwapExecutor =
|
||||||
|
USDE.balanceOf(address(uniswapV4Exposed));
|
||||||
|
|
||||||
|
uint256 amountOut = uniswapV4Exposed.swap(amountIn, protocolData);
|
||||||
|
assertEq(USDE.balanceOf(poolManager), usdeBalanceBeforePool + amountIn);
|
||||||
|
assertEq(
|
||||||
|
USDE.balanceOf(address(uniswapV4Exposed)),
|
||||||
|
usdeBalanceBeforeSwapExecutor - amountIn
|
||||||
|
);
|
||||||
|
assertTrue(USDT.balanceOf(address(uniswapV4Exposed)) == amountOut);
|
||||||
|
}
|
||||||
|
|
||||||
function testMultipleSwap() public {
|
function testMultipleSwap() public {
|
||||||
// USDE -> USDT -> WBTC
|
// USDE -> USDT -> WBTC
|
||||||
uint256 amountIn = 100 ether;
|
uint256 amountIn = 100 ether;
|
||||||
|
|||||||
Reference in New Issue
Block a user