From f975e60671eecb8ad8d65c47694013db10f999d0 Mon Sep 17 00:00:00 2001 From: Alice <34962750+hensha256@users.noreply.github.com> Date: Wed, 22 May 2024 16:57:13 -0300 Subject: [PATCH] Fixing hook address constants (#689) * Fixing hook address constants * change variable name --- .../addLiquidity with empty hook.snap | 2 +- .../removeLiquidity with empty hook.snap | 2 +- .forge-snapshots/swap with hooks.snap | 2 +- test/PoolManager.t.sol | 24 +++++++++---------- test/PoolManagerInitialize.t.sol | 8 +++---- test/libraries/Hooks.t.sol | 7 +++--- test/utils/Constants.sol | 5 ++-- test/utils/SwapHelper.t.sol | 6 ++--- 8 files changed, 28 insertions(+), 28 deletions(-) diff --git a/.forge-snapshots/addLiquidity with empty hook.snap b/.forge-snapshots/addLiquidity with empty hook.snap index cf3040c0e..05777f2ca 100644 --- a/.forge-snapshots/addLiquidity with empty hook.snap +++ b/.forge-snapshots/addLiquidity with empty hook.snap @@ -1 +1 @@ -285659 \ No newline at end of file +285662 \ No newline at end of file diff --git a/.forge-snapshots/removeLiquidity with empty hook.snap b/.forge-snapshots/removeLiquidity with empty hook.snap index 5b24c0b0f..3e39955ba 100644 --- a/.forge-snapshots/removeLiquidity with empty hook.snap +++ b/.forge-snapshots/removeLiquidity with empty hook.snap @@ -1 +1 @@ -122628 \ No newline at end of file +141425 \ No newline at end of file diff --git a/.forge-snapshots/swap with hooks.snap b/.forge-snapshots/swap with hooks.snap index fcd0826f2..abd4c985b 100644 --- a/.forge-snapshots/swap with hooks.snap +++ b/.forge-snapshots/swap with hooks.snap @@ -1 +1 @@ -123297 \ No newline at end of file +142010 \ No newline at end of file diff --git a/test/PoolManager.t.sol b/test/PoolManager.t.sol index bd4de73db..5cb0efd17 100644 --- a/test/PoolManager.t.sol +++ b/test/PoolManager.t.sol @@ -249,7 +249,7 @@ contract PoolManagerTest is Test, Deployers, GasSnapshot { address payable mockAddr = payable(address(uint160(Hooks.BEFORE_ADD_LIQUIDITY_FLAG | Hooks.AFTER_ADD_LIQUIDITY_FLAG))); - address payable hookAddr = payable(Constants.MOCK_HOOKS); + address payable hookAddr = payable(Constants.ALL_HOOKS); vm.etch(hookAddr, vm.getDeployedCode("EmptyTestHooks.sol:EmptyTestHooks")); MockContract mockContract = new MockContract(); @@ -278,7 +278,7 @@ contract PoolManagerTest is Test, Deployers, GasSnapshot { address payable mockAddr = payable(address(uint160(Hooks.BEFORE_REMOVE_LIQUIDITY_FLAG | Hooks.AFTER_REMOVE_LIQUIDITY_FLAG))); - address payable hookAddr = payable(Constants.MOCK_HOOKS); + address payable hookAddr = payable(Constants.ALL_HOOKS); vm.etch(hookAddr, vm.getDeployedCode("EmptyTestHooks.sol:EmptyTestHooks")); MockContract mockContract = new MockContract(); @@ -508,10 +508,10 @@ contract PoolManagerTest is Test, Deployers, GasSnapshot { } function test_addLiquidity_withHooks_gas() public { - address hookEmptyAddr = Constants.EMPTY_HOOKS; + address allHooksAddr = Constants.ALL_HOOKS; MockHooks impl = new MockHooks(); - vm.etch(hookEmptyAddr, address(impl).code); - MockHooks mockHooks = MockHooks(hookEmptyAddr); + vm.etch(allHooksAddr, address(impl).code); + MockHooks mockHooks = MockHooks(allHooksAddr); (key,) = initPool(currency0, currency1, mockHooks, 3000, SQRT_PRICE_1_1, ZERO_BYTES); @@ -520,10 +520,10 @@ contract PoolManagerTest is Test, Deployers, GasSnapshot { } function test_removeLiquidity_withHooks_gas() public { - address hookEmptyAddr = Constants.EMPTY_HOOKS; + address allHooksAddr = Constants.ALL_HOOKS; MockHooks impl = new MockHooks(); - vm.etch(hookEmptyAddr, address(impl).code); - MockHooks mockHooks = MockHooks(hookEmptyAddr); + vm.etch(allHooksAddr, address(impl).code); + MockHooks mockHooks = MockHooks(allHooksAddr); (key,) = initPool(currency0, currency1, mockHooks, 3000, SQRT_PRICE_1_1, ZERO_BYTES); modifyLiquidityRouter.modifyLiquidity(key, LIQUIDITY_PARAMS, ZERO_BYTES); @@ -584,7 +584,7 @@ contract PoolManagerTest is Test, Deployers, GasSnapshot { function test_swap_succeedsWithHooksIfInitialized() public { address payable mockAddr = payable(address(uint160(Hooks.BEFORE_SWAP_FLAG | Hooks.AFTER_SWAP_FLAG))); - address payable hookAddr = payable(Constants.MOCK_HOOKS); + address payable hookAddr = payable(Constants.ALL_HOOKS); vm.etch(hookAddr, vm.getDeployedCode("EmptyTestHooks.sol:EmptyTestHooks")); MockContract mockContract = new MockContract(); @@ -688,11 +688,11 @@ contract PoolManagerTest is Test, Deployers, GasSnapshot { } function test_swap_withHooks_gas() public { - address hookEmptyAddr = Constants.EMPTY_HOOKS; + address allHooksAddr = Constants.ALL_HOOKS; MockHooks impl = new MockHooks(); - vm.etch(hookEmptyAddr, address(impl).code); - MockHooks mockHooks = MockHooks(hookEmptyAddr); + vm.etch(allHooksAddr, address(impl).code); + MockHooks mockHooks = MockHooks(allHooksAddr); (key,) = initPoolAndAddLiquidity(currency0, currency1, mockHooks, 3000, SQRT_PRICE_1_1, ZERO_BYTES); diff --git a/test/PoolManagerInitialize.t.sol b/test/PoolManagerInitialize.t.sol index 750e491f7..7469b2570 100644 --- a/test/PoolManagerInitialize.t.sol +++ b/test/PoolManagerInitialize.t.sol @@ -114,7 +114,7 @@ contract PoolManagerInitializeTest is Test, Deployers, GasSnapshot { sqrtPriceX96 = uint160(bound(sqrtPriceX96, TickMath.MIN_SQRT_PRICE, TickMath.MAX_SQRT_PRICE - 1)); address payable mockAddr = payable(address(uint160(Hooks.BEFORE_INITIALIZE_FLAG | Hooks.AFTER_INITIALIZE_FLAG))); - address payable hookAddr = payable(Constants.MOCK_HOOKS); + address payable hookAddr = payable(Constants.ALL_HOOKS); vm.etch(hookAddr, vm.getDeployedCode("EmptyTestHooks.sol:EmptyTestHooks")); MockContract mockContract = new MockContract(); @@ -163,11 +163,11 @@ contract PoolManagerInitializeTest is Test, Deployers, GasSnapshot { // Assumptions tested in Pool.t.sol sqrtPriceX96 = uint160(bound(sqrtPriceX96, TickMath.MIN_SQRT_PRICE, TickMath.MAX_SQRT_PRICE - 1)); - address hookEmptyAddr = Constants.EMPTY_HOOKS; + address allHooksAddr = Constants.ALL_HOOKS; MockHooks impl = new MockHooks(); - vm.etch(hookEmptyAddr, address(impl).code); - MockHooks mockHooks = MockHooks(hookEmptyAddr); + vm.etch(allHooksAddr, address(impl).code); + MockHooks mockHooks = MockHooks(allHooksAddr); uninitializedKey.hooks = mockHooks; diff --git a/test/libraries/Hooks.t.sol b/test/libraries/Hooks.t.sol index 715ce48aa..e86f71230 100644 --- a/test/libraries/Hooks.t.sol +++ b/test/libraries/Hooks.t.sol @@ -23,21 +23,20 @@ import {BalanceDelta} from "../../src/types/BalanceDelta.sol"; import {BaseTestHooks} from "../../src/test/BaseTestHooks.sol"; import {EmptyRevertHook} from "../../src/test/EmptyRevertHook.sol"; import {StateLibrary} from "../../src/libraries/StateLibrary.sol"; +import {Constants} from "../utils/Constants.sol"; contract HooksTest is Test, Deployers, GasSnapshot { using PoolIdLibrary for PoolKey; using Hooks for IHooks; using StateLibrary for IPoolManager; - /// 0011 1111 1111 1111 - address payable ALL_HOOKS_ADDRESS = payable(0x0000000000000000000000000000000000003fFF); MockHooks mockHooks; BaseTestHooks revertingHookImpl; function setUp() public { MockHooks impl = new MockHooks(); - vm.etch(ALL_HOOKS_ADDRESS, address(impl).code); - mockHooks = MockHooks(ALL_HOOKS_ADDRESS); + vm.etch(Constants.ALL_HOOKS, address(impl).code); + mockHooks = MockHooks(Constants.ALL_HOOKS); revertingHookImpl = new BaseTestHooks(); diff --git a/test/utils/Constants.sol b/test/utils/Constants.sol index dbe6b6c9f..b60b1ceca 100644 --- a/test/utils/Constants.sol +++ b/test/utils/Constants.sol @@ -14,8 +14,9 @@ library Constants { uint160 constant MAX_UINT160 = type(uint160).max; address constant ADDRESS_ZERO = address(0); - address constant EMPTY_HOOKS = address(0x0000000000000000000000000000000000003c00); - address constant MOCK_HOOKS = address(0x0000000000000000000000000000000000003Fc0); + + /// 0011 1111 1111 1111 + address payable constant ALL_HOOKS = payable(0x0000000000000000000000000000000000003fFF); uint256 constant POOL_SLOT = 10; uint256 constant TICKS_OFFSET = 4; diff --git a/test/utils/SwapHelper.t.sol b/test/utils/SwapHelper.t.sol index 9edd8c076..075e11696 100644 --- a/test/utils/SwapHelper.t.sol +++ b/test/utils/SwapHelper.t.sol @@ -19,19 +19,19 @@ import {PoolId, PoolIdLibrary} from "../../src/types/PoolId.sol"; import {PoolKey} from "../../src/types/PoolKey.sol"; import {IERC20Minimal} from "../../src/interfaces/external/IERC20Minimal.sol"; import {BalanceDelta} from "../../src/types/BalanceDelta.sol"; +import {Constants} from "../utils/Constants.sol"; /// @notice Testing Deployers.swap() and Deployers.swapNativeInput() contract SwapHelperTest is Test, Deployers, GasSnapshot { using PoolIdLibrary for PoolKey; using Hooks for IHooks; - address payable ALL_HOOKS_ADDRESS = payable(0x0000000000000000000000000000000000003fFF); MockHooks mockHooks; function setUp() public { MockHooks impl = new MockHooks(); - vm.etch(ALL_HOOKS_ADDRESS, address(impl).code); - mockHooks = MockHooks(ALL_HOOKS_ADDRESS); + vm.etch(Constants.ALL_HOOKS, address(impl).code); + mockHooks = MockHooks(Constants.ALL_HOOKS); initializeManagerRoutersAndPoolsWithLiq(mockHooks); }