Rename Maverick to MaverickV1 and add tests (#742)

* Renaming Maverick and adding tests

* Update Base chain ID
This commit is contained in:
Savarn Dontamsetti (Sav) 2023-08-17 17:11:05 -04:00 committed by GitHub
parent 7f324dd75d
commit 09d6fbce81
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 86 additions and 4 deletions

View File

@ -105,7 +105,7 @@ contract BSCBridgeAdapter is
return (0, true); return (0, true);
} }
boughtAmount = _tradeWOOFi(sellToken, buyToken, sellAmount, order.bridgeData); boughtAmount = _tradeWOOFi(sellToken, buyToken, sellAmount, order.bridgeData);
} else if (protocolId == BridgeProtocols.MAVERICK) { } else if (protocolId == BridgeProtocols.MAVERICKV1) {
if (dryRun) { if (dryRun) {
return (0, true); return (0, true);
} }

View File

@ -75,7 +75,7 @@ contract BaseBridgeAdapter is
return (0, true); return (0, true);
} }
boughtAmount = _tradeBalancerV2Batch(sellAmount, order.bridgeData); boughtAmount = _tradeBalancerV2Batch(sellAmount, order.bridgeData);
} else if (protocolId == BridgeProtocols.MAVERICK) { } else if (protocolId == BridgeProtocols.MAVERICKV1) {
if (dryRun) { if (dryRun) {
return (0, true); return (0, true);
} }

View File

@ -58,5 +58,5 @@ library BridgeProtocols {
uint128 internal constant BARTER = 34; uint128 internal constant BARTER = 34;
uint128 internal constant TRADERJOEV2 = 35; uint128 internal constant TRADERJOEV2 = 35;
uint128 internal constant VELODROMEV2 = 36; uint128 internal constant VELODROMEV2 = 36;
uint128 internal constant MAVERICK = 37; uint128 internal constant MAVERICKV1 = 37;
} }

View File

@ -177,7 +177,7 @@ contract EthereumBridgeAdapter is
return (0, true); return (0, true);
} }
boughtAmount = _tradeBarter(sellToken, sellAmount, order.bridgeData); boughtAmount = _tradeBarter(sellToken, sellAmount, order.bridgeData);
} else if (protocolId == BridgeProtocols.MAVERICK) { } else if (protocolId == BridgeProtocols.MAVERICKV1) {
if (dryRun) { if (dryRun) {
return (0, true); return (0, true);
} }

View File

@ -32,4 +32,8 @@ contract BSCBridgeAdapterTest is Test {
function testSupportsUniswapV3() public { function testSupportsUniswapV3() public {
assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.UNISWAPV3) << 128))); assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.UNISWAPV3) << 128)));
} }
function testSupportMaverickV1() public {
assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.MAVERICKV1) << 128)));
}
} }

View File

@ -0,0 +1,39 @@
// SPDX-License-Identifier: Apache-2.0
/*
Copyright 2023 ZeroEx Intl.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
pragma solidity ^0.6.5;
pragma experimental ABIEncoderV2;
import "forge-std/Test.sol";
import "../../../contracts/src/transformers/bridges/BaseBridgeAdapter.sol";
import "../../../contracts/src/transformers/bridges/BridgeProtocols.sol";
contract BaseBridgeAdapterTest is Test {
address constant WETH = 0x4200000000000000000000000000000000000006;
BaseBridgeAdapter private adapter;
function setUp() public {
vm.chainId(8453);
adapter = new BaseBridgeAdapter(IEtherToken(WETH));
}
function testSupportsUniswapV3() public {
assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.UNISWAPV3) << 128)));
}
function testSupportMaverickV1() public {
assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.MAVERICKV1) << 128)));
}
}

View File

@ -0,0 +1,39 @@
// SPDX-License-Identifier: Apache-2.0
/*
Copyright 2023 ZeroEx Intl.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
pragma solidity ^0.6.5;
pragma experimental ABIEncoderV2;
import "forge-std/Test.sol";
import "../../../contracts/src/transformers/bridges/EthereumBridgeAdapter.sol";
import "../../../contracts/src/transformers/bridges/BridgeProtocols.sol";
contract EthereumBridgeAdapterTest is Test {
address constant WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
EthereumBridgeAdapter private adapter;
function setUp() public {
vm.chainId(1);
adapter = new EthereumBridgeAdapter(IEtherToken(WETH));
}
function testSupportsUniswapV3() public {
assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.UNISWAPV3) << 128)));
}
function testSupportMaverickV1() public {
assertTrue(adapter.isSupportedSource(bytes32(uint256(BridgeProtocols.MAVERICKV1) << 128)));
}
}