diff --git a/test/Basic.t.sol b/test/Basic.t.sol index c208f5e..75b5cf5 100644 --- a/test/Basic.t.sol +++ b/test/Basic.t.sol @@ -2,6 +2,7 @@ pragma solidity ^0.8.24; import {IEVault, IEulerSwap, EulerSwapTestBase, EulerSwap, TestERC20} from "./EulerSwapTestBase.t.sol"; +import {QuoteLib} from "../src/libraries/QuoteLib.sol"; contract Basic is EulerSwapTestBase { EulerSwap public eulerSwap; @@ -40,6 +41,14 @@ contract Basic is EulerSwapTestBase { assertEq(assetTST2.balanceOf(address(this)), amountOut); } + function test_badTokenAddrs() public { + vm.expectRevert(QuoteLib.UnsupportedPair.selector); + periphery.quoteExactInput(address(eulerSwap), address(assetTST), address(1234), 0); + + vm.expectRevert(QuoteLib.UnsupportedPair.selector); + periphery.quoteExactInput(address(eulerSwap), address(1234), address(assetTST), 0); + } + function test_altPrice() public { uint256 price = 0.5e18; uint256 px = price; diff --git a/test/HookSwaps.t.sol b/test/HookSwaps.t.sol index 0eac841..ad28c4f 100644 --- a/test/HookSwaps.t.sol +++ b/test/HookSwaps.t.sol @@ -126,6 +126,26 @@ contract HookSwapsTest is EulerSwapTestBase { vm.stopPrank(); } + function test_hookPermissions() public view { + Hooks.Permissions memory perms = eulerSwap.getHookPermissions(); + + assertTrue(perms.beforeInitialize); + assertTrue(perms.beforeAddLiquidity); + assertTrue(perms.beforeSwap); + assertTrue(perms.beforeSwapReturnDelta); + + assertFalse(perms.afterInitialize); + assertFalse(perms.afterAddLiquidity); + assertFalse(perms.beforeRemoveLiquidity); + assertFalse(perms.afterRemoveLiquidity); + assertFalse(perms.afterSwap); + assertFalse(perms.beforeDonate); + assertFalse(perms.afterDonate); + assertFalse(perms.afterSwapReturnDelta); + assertFalse(perms.afterAddLiquidityReturnDelta); + assertFalse(perms.afterRemoveLiquidityReturnDelta); + } + /// @dev adding liquidity as a concentrated liquidity position will revert function test_revertAddConcentratedLiquidity() public { assetTST.mint(anyone, 10000e18);