diff --git a/packages/contracts-rfq/test/FastBridgeV2.GasBench.Encoding.t.sol b/packages/contracts-rfq/test/FastBridgeV2.GasBench.Encoding.t.sol new file mode 100644 index 0000000000..703e73267b --- /dev/null +++ b/packages/contracts-rfq/test/FastBridgeV2.GasBench.Encoding.t.sol @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {FastBridgeV2SrcBaseTest} from "./FastBridgeV2.Src.Base.t.sol"; + +// solhint-disable func-name-mixedcase, ordering +contract FastBridgeV2GasBenchmarkSrcProtocolFeesTest is FastBridgeV2SrcBaseTest { + // TODO: add more tests with variable length requests once arbitrary call is done + + function test_getBridgeTransaction() public view { + bytes memory request = abi.encode(extractV1(tokenTx)); + fastBridge.getBridgeTransaction(request); + } + + function test_getBridgeTransactionV2() public view { + bytes memory request = abi.encode(tokenTx); + fastBridge.getBridgeTransactionV2(request); + } +} diff --git a/packages/contracts-rfq/test/FastBridgeV2.GasBench.Src.t.sol b/packages/contracts-rfq/test/FastBridgeV2.GasBench.Src.t.sol index 916f465475..0d6314baac 100644 --- a/packages/contracts-rfq/test/FastBridgeV2.GasBench.Src.t.sol +++ b/packages/contracts-rfq/test/FastBridgeV2.GasBench.Src.t.sol @@ -135,17 +135,21 @@ contract FastBridgeV2GasBenchmarkSrcTest is FastBridgeV2SrcBaseTest { } function test_claim_token() public { + bytes32 txId = getTxId(provenTokenTx); skipTimeAtLeast({time: CLAIM_DELAY + 1}); + assertTrue(fastBridge.canClaim(txId, relayerA)); claim({caller: relayerA, bridgeTx: provenTokenTx}); - assertEq(fastBridge.bridgeStatuses(getTxId(provenTokenTx)), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); + assertEq(fastBridge.bridgeStatuses(txId), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); assertEq(srcToken.balanceOf(relayerA), INITIAL_RELAYER_BALANCE + tokenTx.originAmount); assertEq(srcToken.balanceOf(address(fastBridge)), initialFastBridgeBalanceToken - tokenTx.originAmount); } function test_claimWithAddress_token() public { + bytes32 txId = getTxId(provenTokenTx); skipTimeAtLeast({time: CLAIM_DELAY + 1}); + assertTrue(fastBridge.canClaim(txId, relayerA)); claim({caller: relayerA, bridgeTx: provenTokenTx, to: relayerB}); - assertEq(fastBridge.bridgeStatuses(getTxId(provenTokenTx)), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); + assertEq(fastBridge.bridgeStatuses(txId), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); assertEq(srcToken.balanceOf(relayerB), INITIAL_RELAYER_BALANCE + tokenTx.originAmount); assertEq(srcToken.balanceOf(address(fastBridge)), initialFastBridgeBalanceToken - tokenTx.originAmount); } @@ -217,17 +221,21 @@ contract FastBridgeV2GasBenchmarkSrcTest is FastBridgeV2SrcBaseTest { } function test_claim_eth() public { + bytes32 txId = getTxId(provenEthTx); skipTimeAtLeast({time: CLAIM_DELAY + 1}); + assertTrue(fastBridge.canClaim(txId, relayerA)); claim({caller: relayerA, bridgeTx: provenEthTx}); - assertEq(fastBridge.bridgeStatuses(getTxId(provenEthTx)), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); + assertEq(fastBridge.bridgeStatuses(txId), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); assertEq(relayerA.balance, INITIAL_RELAYER_BALANCE + ethTx.originAmount); assertEq(address(fastBridge).balance, initialFastBridgeBalanceEth - ethTx.originAmount); } function test_claimWithAddress_eth() public { + bytes32 txId = getTxId(provenEthTx); skipTimeAtLeast({time: CLAIM_DELAY + 1}); + assertTrue(fastBridge.canClaim(txId, relayerA)); claim({caller: relayerA, bridgeTx: provenEthTx, to: relayerB}); - assertEq(fastBridge.bridgeStatuses(getTxId(provenEthTx)), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); + assertEq(fastBridge.bridgeStatuses(txId), IFastBridgeV2.BridgeStatus.RELAYER_CLAIMED); assertEq(relayerB.balance, INITIAL_RELAYER_BALANCE + ethTx.originAmount); assertEq(address(fastBridge).balance, initialFastBridgeBalanceEth - ethTx.originAmount); }