Open
Description
Describe the bug
Contract: v4-core/test/utils/AmountHelpers.sol
Function:
function getMaxAmountInForPool(
IPoolManager manager,
IPoolManager.ModifyLiquidityParams memory params,
PoolKey memory key
) public view returns (uint256 amount0, uint256 amount1) {
PoolId id = key.toId();
uint128 liquidity = StateLibrary.getLiquidity(manager, id);
(uint160 sqrtPriceX96,,,) = StateLibrary.getSlot0(manager, id);
uint160 sqrtPriceX96Lower = TickMath.getSqrtPriceAtTick(params.tickLower);
uint160 sqrtPriceX96Upper = TickMath.getSqrtPriceAtTick(params.tickUpper);
amount0 = LiquidityAmounts.getAmount0ForLiquidity(sqrtPriceX96Lower, sqrtPriceX96, liquidity);
amount1 = LiquidityAmounts.getAmount1ForLiquidity(sqrtPriceX96Upper, sqrtPriceX96, liquidity);
}
Expected Behavior
The last 2 lines to calculate amount0 and amount1 should be
amount0 = LiquidityAmounts.getAmount0ForLiquidity(sqrtPriceX96, sqrtPriceX96Upper, liquidity);
amount1 = LiquidityAmounts.getAmount1ForLiquidity(sqrtPriceX96Lower, sqrtPriceX96, liquidity);
To Reproduce
No response
Additional context
No response