Skip to content

Commit ab225bf

Browse files
Merge branch 'develop' into arpit/1447
2 parents ccd81db + 3340446 commit ab225bf

52 files changed

Lines changed: 2677 additions & 1191 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

aggoracle/oracle.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import (
88
"github.com/agglayer/aggkit/aggoracle/metrics"
99
"github.com/agglayer/aggkit/l1infotreesync"
1010
"github.com/agglayer/aggkit/log"
11-
"github.com/ethereum/go-ethereum"
11+
"github.com/agglayer/aggkit/types"
1212
"github.com/ethereum/go-ethereum/common"
1313
)
1414

@@ -29,7 +29,7 @@ type ChainSender interface {
2929
type AggOracle struct {
3030
logger *log.Logger
3131
waitPeriodNextGER time.Duration
32-
l1Client ethereum.ChainReader
32+
l1Client types.EthChainReader
3333
l1Info L1InfoTreeSyncer
3434
chainSender ChainSender
3535
}
@@ -38,7 +38,7 @@ type AggOracle struct {
3838
func New(
3939
logger *log.Logger,
4040
chainSender ChainSender,
41-
l1Client ethereum.ChainReader,
41+
l1Client types.EthChainReader,
4242
l1InfoTreeSyncer L1InfoTreeSyncer,
4343
waitPeriodNextGER time.Duration,
4444
) (*AggOracle, error) {

aggsender/query/l1info_tree_data_query.go

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package query
33
import (
44
"context"
55
"fmt"
6-
"math/big"
76

87
"github.com/0xPolygon/cdk-contracts-tooling/contracts/aggchain-multisig/agglayerger"
98
"github.com/agglayer/aggkit/aggsender/types"
@@ -15,8 +14,6 @@ import (
1514
"github.com/ethereum/go-ethereum/common"
1615
)
1716

18-
var finalizedBlockBigInt = big.NewInt(int64(aggkittypes.Finalized))
19-
2017
var _ types.L1InfoTreeDataQuerier = (*L1InfoTreeDataQuerier)(nil)
2118

2219
// L1InfoTreeDataQuerier is a struct that holds the logic to query the L1 Info tree data
@@ -143,13 +140,13 @@ func (l *L1InfoTreeDataQuerier) GetProofForGER(
143140

144141
// getLatestProcessedFinalizedBlock returns the latest processed finalized block from the l1infotreesyncer
145142
func (l *L1InfoTreeDataQuerier) getLatestProcessedFinalizedBlock(ctx context.Context) (uint64, error) {
146-
lastFinalizedL1Block, err := l.l1Client.HeaderByNumber(ctx, finalizedBlockBigInt)
143+
lastFinalizedL1Block, err := l.l1Client.CustomHeaderByNumber(ctx, &aggkittypes.FinalizedBlock)
147144
if err != nil {
148145
return 0, fmt.Errorf("error getting latest finalized L1 block: %w", err)
149146
}
150147

151148
lastProcessedBlockNum, lastProcessedBlockHash, err := l.l1InfoTreeSyncer.GetProcessedBlockUntil(ctx,
152-
lastFinalizedL1Block.Number.Uint64())
149+
lastFinalizedL1Block.Number)
153150
if err != nil {
154151
return 0, fmt.Errorf("error getting latest processed block from l1infotreesyncer: %w", err)
155152
}
@@ -158,25 +155,25 @@ func (l *L1InfoTreeDataQuerier) getLatestProcessedFinalizedBlock(ctx context.Con
158155
return 0, fmt.Errorf("l1infotreesyncer did not process any block yet")
159156
}
160157

161-
if lastFinalizedL1Block.Number.Uint64() > lastProcessedBlockNum {
158+
if lastFinalizedL1Block.Number > lastProcessedBlockNum {
162159
// syncer has a lower block than the finalized block, so we need to get that block from the l1 node
163-
lastFinalizedL1Block, err = l.l1Client.HeaderByNumber(ctx, new(big.Int).SetUint64(lastProcessedBlockNum))
160+
lastFinalizedL1Block, err = l.l1Client.CustomHeaderByNumber(ctx, aggkittypes.NewBlockNumber(lastProcessedBlockNum))
164161
if err != nil {
165162
return 0, fmt.Errorf("error getting latest processed finalized block: %d: %w",
166163
lastProcessedBlockNum, err)
167164
}
168165
}
169166

170-
if (lastProcessedBlockHash == common.Hash{}) || (lastProcessedBlockHash == lastFinalizedL1Block.Hash()) {
167+
if (lastProcessedBlockHash == common.Hash{}) || (lastProcessedBlockHash == lastFinalizedL1Block.Hash) {
171168
// if the hash is empty it means that this is an old block that was processed before this
172169
// feature was added, so we will consider it finalized
173-
return lastFinalizedL1Block.Number.Uint64(), nil
170+
return lastFinalizedL1Block.Number, nil
174171
}
175172

176173
return 0, fmt.Errorf("l1infotreesyncer returned a different hash for "+
177174
"the latest finalized block: %d. Might be that syncer did not process a reorg yet. "+
178175
"Expected hash: %s, got: %s", lastProcessedBlockNum,
179-
lastFinalizedL1Block.Hash().String(), lastProcessedBlockHash.String())
176+
lastFinalizedL1Block.Hash.String(), lastProcessedBlockHash.String())
180177
}
181178

182179
// GetInfoByIndex returns the L1 Info tree leaf for the given index

aggsender/query/l1info_tree_data_query_test.go

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,14 @@ package query
33
import (
44
"context"
55
"errors"
6-
"math/big"
76
"testing"
87

98
"github.com/agglayer/aggkit/aggsender/mocks"
109
"github.com/agglayer/aggkit/l1infotreesync"
1110
treetypes "github.com/agglayer/aggkit/tree/types"
11+
aggkittypes "github.com/agglayer/aggkit/types"
1212
aggkittypesmocks "github.com/agglayer/aggkit/types/mocks"
1313
"github.com/ethereum/go-ethereum/common"
14-
gethtypes "github.com/ethereum/go-ethereum/core/types"
1514
"github.com/stretchr/testify/require"
1615
)
1716

@@ -103,6 +102,8 @@ func Test_GetFinalizedL1InfoTreeData(t *testing.T) {
103102
}
104103
}
105104

105+
var finalizedBlockBigInt = &aggkittypes.FinalizedBlock
106+
106107
func Test_AggchainProverFlow_GetLatestProcessedFinalizedBlock(t *testing.T) {
107108
t.Parallel()
108109

@@ -117,56 +118,56 @@ func Test_AggchainProverFlow_GetLatestProcessedFinalizedBlock(t *testing.T) {
117118
{
118119
name: "error getting latest finalized L1 block",
119120
mockFn: func(mockL1InfoTreeSyncer *mocks.L1InfoTreeSyncer, mockL1Client *aggkittypesmocks.BaseEthereumClienter) {
120-
mockL1Client.On("HeaderByNumber", ctx, finalizedBlockBigInt).Return(nil, errors.New("some error"))
121+
mockL1Client.On("CustomHeaderByNumber", ctx, finalizedBlockBigInt).Return(nil, errors.New("some error"))
121122
},
122123
expectedError: "error getting latest finalized L1 block: some error",
123124
},
124125
{
125126
name: "error getting latest processed block from l1infotreesyncer",
126127
mockFn: func(mockL1InfoTreeSyncer *mocks.L1InfoTreeSyncer, mockL1Client *aggkittypesmocks.BaseEthereumClienter) {
127-
l1Header := &gethtypes.Header{Number: big.NewInt(10)}
128-
mockL1Client.On("HeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
129-
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number.Uint64()).Return(uint64(0), common.Hash{}, errors.New("some error"))
128+
l1Header := &aggkittypes.BlockHeader{Number: 10}
129+
mockL1Client.On("CustomHeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
130+
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number).Return(uint64(0), common.Hash{}, errors.New("some error"))
130131
},
131132
expectedError: "error getting latest processed block from l1infotreesyncer: some error",
132133
},
133134
{
134135
name: "l1infotreesyncer did not process any block yet",
135136
mockFn: func(mockL1InfoTreeSyncer *mocks.L1InfoTreeSyncer, mockL1Client *aggkittypesmocks.BaseEthereumClienter) {
136-
l1Header := &gethtypes.Header{Number: big.NewInt(10)}
137-
mockL1Client.On("HeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
138-
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number.Uint64()).Return(uint64(0), common.Hash{}, nil)
137+
l1Header := &aggkittypes.BlockHeader{Number: 10}
138+
mockL1Client.On("CustomHeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
139+
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number).Return(uint64(0), common.Hash{}, nil)
139140
},
140141
expectedError: "l1infotreesyncer did not process any block yet",
141142
},
142143
{
143144
name: "error getting latest processed finalized block",
144145
mockFn: func(mockL1InfoTreeSyncer *mocks.L1InfoTreeSyncer, mockL1Client *aggkittypesmocks.BaseEthereumClienter) {
145-
l1Header := &gethtypes.Header{Number: big.NewInt(10)}
146-
mockL1Client.On("HeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
147-
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number.Uint64()).Return(uint64(9), common.Hash{}, nil)
148-
mockL1Client.On("HeaderByNumber", ctx, big.NewInt(9)).Return(nil, errors.New("some error"))
146+
l1Header := &aggkittypes.BlockHeader{Number: 10}
147+
mockL1Client.On("CustomHeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
148+
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number).Return(uint64(9), common.Hash{}, nil)
149+
mockL1Client.On("CustomHeaderByNumber", ctx, aggkittypes.NewBlockNumber(9)).Return(nil, errors.New("some error"))
149150
},
150151
expectedError: "error getting latest processed finalized block: 9: some error",
151152
},
152153
{
153154
name: "l1infotreesyncer returned a different hash for the latest finalized block",
154155
mockFn: func(mockL1InfoTreeSyncer *mocks.L1InfoTreeSyncer, mockL1Client *aggkittypesmocks.BaseEthereumClienter) {
155-
l1Header := &gethtypes.Header{Number: big.NewInt(10)}
156-
mockL1Client.On("HeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
157-
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number.Uint64()).Return(
158-
l1Header.Number.Uint64(), common.HexToHash("0x2"), nil)
156+
l1Header := &aggkittypes.BlockHeader{Number: 10, Hash: common.HexToHash("0xabc")}
157+
mockL1Client.On("CustomHeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
158+
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number).Return(
159+
l1Header.Number, common.HexToHash("0x2"), nil)
159160
},
160161
expectedError: "l1infotreesyncer returned a different hash for the latest finalized block: 10. " +
161162
"Might be that syncer did not process a reorg yet.",
162163
},
163164
{
164165
name: "success",
165166
mockFn: func(mockL1InfoTreeSyncer *mocks.L1InfoTreeSyncer, mockL1Client *aggkittypesmocks.BaseEthereumClienter) {
166-
l1Header := &gethtypes.Header{Number: big.NewInt(10)}
167-
mockL1Client.On("HeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
168-
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number.Uint64()).Return(
169-
l1Header.Number.Uint64(), l1Header.Hash(), nil)
167+
l1Header := &aggkittypes.BlockHeader{Number: 10}
168+
mockL1Client.On("CustomHeaderByNumber", ctx, finalizedBlockBigInt).Return(l1Header, nil)
169+
mockL1InfoTreeSyncer.On("GetProcessedBlockUntil", ctx, l1Header.Number).Return(
170+
l1Header.Number, l1Header.Hash, nil)
170171
},
171172
expectedBlock: 10,
172173
},

bridgesync/agglayer_bridge_l2_reader_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77

88
"github.com/agglayer/aggkit/bridgesync/types"
99
aggkitcommon "github.com/agglayer/aggkit/common"
10+
"github.com/agglayer/aggkit/etherman"
1011
aggkittypes "github.com/agglayer/aggkit/types"
1112
mocksethclient "github.com/agglayer/aggkit/types/mocks"
1213
"github.com/ethereum/go-ethereum/common"
@@ -228,7 +229,7 @@ func TestAgglayerBridgeL2Reader_GetUnsetClaimsForBlockRange_SimulatedBackend(t *
228229
// Use the client from the simulated backend
229230
client := simulatedBackend.Client()
230231

231-
reader, err := NewAgglayerBridgeL2Reader(bridgeAddr, client)
232+
reader, err := NewAgglayerBridgeL2Reader(bridgeAddr, etherman.NewDefaultEthClient(client, nil, nil))
232233
require.NoError(t, err)
233234

234235
// Test with the simulated backend - need to mine some blocks first
@@ -253,7 +254,7 @@ func TestAgglayerBridgeL2Reader_GetUnsetClaimsForBlockRange_WithRealEvents(t *te
253254
// Use the client from the simulated backend
254255
client := simulatedBackend.Client()
255256

256-
reader, err := NewAgglayerBridgeL2Reader(bridgeAddr, client)
257+
reader, err := NewAgglayerBridgeL2Reader(bridgeAddr, etherman.NewDefaultEthClient(client, nil, nil))
257258
require.NoError(t, err)
258259

259260
// Mine some blocks to create a valid range
@@ -281,7 +282,7 @@ func TestAgglayerBridgeL2Reader_GetUnsetClaimsForBlockRange_IteratorBehavior(t *
281282
// Use the client from the simulated backend
282283
client := simulatedBackend.Client()
283284

284-
reader, err := NewAgglayerBridgeL2Reader(bridgeAddr, client)
285+
reader, err := NewAgglayerBridgeL2Reader(bridgeAddr, etherman.NewDefaultEthClient(client, nil, nil))
285286
require.NoError(t, err)
286287

287288
// Mine some blocks to create a valid range

bridgesync/backfill_tx_sender_test.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,9 @@ import (
1313
"github.com/0xPolygon/cdk-contracts-tooling/contracts/aggchain-multisig/agglayerbridge"
1414
"github.com/agglayer/aggkit/bridgesync/migrations"
1515
"github.com/agglayer/aggkit/db"
16+
"github.com/agglayer/aggkit/etherman"
17+
ethermanconfig "github.com/agglayer/aggkit/etherman/config"
1618
"github.com/agglayer/aggkit/log"
17-
aggkittypes "github.com/agglayer/aggkit/types"
1819
"github.com/agglayer/aggkit/types/mocks"
1920
"github.com/ethereum/go-ethereum/common"
2021
"github.com/stretchr/testify/mock"
@@ -1741,13 +1742,15 @@ func TestBackfillTxnSenderIntegration(t *testing.T) {
17411742

17421743
err = tx.Commit()
17431744
require.NoError(t, err)
1744-
1745+
logger := log.WithFields("module", "test")
17451746
// Create real client
1746-
client, err := aggkittypes.DialWithRetry(t.Context(), rpcURL, nil)
1747+
client, err := etherman.DialWithRetry(t.Context(), logger, &ethermanconfig.RPCClientConfig{
1748+
URL: rpcURL,
1749+
})
17471750
require.NoError(t, err)
17481751

17491752
// Create backfill instance
1750-
logger := log.WithFields("module", "test")
1753+
17511754
backfiller, err := NewBackfillTxnSender(dbPath, client, common.HexToAddress("0x1234"), logger)
17521755
require.NoError(t, err)
17531756
defer backfiller.Close()

bridgesync/bridgesync.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,14 +153,14 @@ func newBridgeSync(
153153
}
154154

155155
if lastProcessedBlock < cfg.InitialBlockNum {
156-
header, err := ethClient.HeaderByNumber(ctx, new(big.Int).SetUint64(cfg.InitialBlockNum))
156+
header, err := ethClient.CustomHeaderByNumber(ctx, aggkittypes.NewBlockNumber(cfg.InitialBlockNum))
157157
if err != nil {
158158
return nil, fmt.Errorf("failed to get initial block %d: %w", cfg.InitialBlockNum, err)
159159
}
160160

161161
err = processor.ProcessBlock(ctx, sync.Block{
162162
Num: cfg.InitialBlockNum,
163-
Hash: header.Hash(),
163+
Hash: header.Hash,
164164
})
165165
if err != nil {
166166
return nil, err

bridgesync/downloader_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ import (
1212
"github.com/0xPolygon/cdk-contracts-tooling/contracts/aggchain-multisig/polygonzkevmbridge"
1313
bridgetypes "github.com/agglayer/aggkit/bridgesync/types"
1414
"github.com/agglayer/aggkit/db"
15+
"github.com/agglayer/aggkit/etherman"
1516
logger "github.com/agglayer/aggkit/log"
1617
"github.com/agglayer/aggkit/sync"
1718
treetypes "github.com/agglayer/aggkit/tree/types"
18-
aggkittypes "github.com/agglayer/aggkit/types"
1919
"github.com/agglayer/aggkit/types/mocks"
2020
"github.com/ethereum/go-ethereum"
2121
"github.com/ethereum/go-ethereum/common"
@@ -35,7 +35,7 @@ func TestExtractTxnAddressesExploratory(t *testing.T) {
3535
l1url := os.Getenv("L1URL")
3636
ethRawClient, err := ethclient.Dial(l1url)
3737
require.NoError(t, err)
38-
ethClient := aggkittypes.NewDefaultEthClient(ethRawClient, ethRawClient.Client())
38+
ethClient := etherman.NewDefaultEthClient(ethRawClient, ethRawClient.Client(), nil)
3939
bridgeAddr := common.HexToAddress("0x2a3dd3eb832af982ec71669e178424b10dca2ede")
4040
agglayerBridge, err := agglayerbridge.NewAgglayerbridge(bridgeAddr, ethRawClient)
4141
require.NoError(t, err)
@@ -115,7 +115,7 @@ func TestExtractCallDataCaseNotMatchingExploratory(t *testing.T) {
115115
l1url := os.Getenv("L1URL")
116116
ethRawClient, err := ethclient.Dial(l1url)
117117
require.NoError(t, err)
118-
ethClient := aggkittypes.NewDefaultEthClient(ethRawClient, ethRawClient.Client())
118+
ethClient := etherman.NewDefaultEthClient(ethRawClient, ethRawClient.Client(), nil)
119119
foundCalls, rootCall, err := extractCallData(ethClient, common.HexToAddress("0x2a3dd3eb832af982ec71669e178424b10dca2ede"),
120120
common.HexToHash("0x280334ea89e49380d29e3c3931b9217bf699eaa7fa23e126c74a05eea1258503"),
121121
logger.WithFields("module", "test"), nil)
@@ -140,7 +140,7 @@ func TestExtractCallDataCaseMessageExploratory(t *testing.T) {
140140
l1url := os.Getenv("L1URL")
141141
ethRawClient, err := ethclient.Dial(l1url)
142142
require.NoError(t, err)
143-
ethClient := aggkittypes.NewDefaultEthClient(ethRawClient, ethRawClient.Client())
143+
ethClient := etherman.NewDefaultEthClient(ethRawClient, ethRawClient.Client(), nil)
144144
foundCalls, rootCall, err := extractCallData(ethClient, common.HexToAddress("0x2a3dd3eb832af982ec71669e178424b10dca2ede"),
145145
common.HexToHash("0x84a7e20778bd35231bfaefdcbb4ada9169b08658db49d69d38e3f467a799db38"),
146146
logger.WithFields("module", "test"), nil)

bridgesync/e2e_test.go

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ import (
1010

1111
"github.com/agglayer/aggkit/bridgesync"
1212
cfgtypes "github.com/agglayer/aggkit/config/types"
13+
"github.com/agglayer/aggkit/etherman"
14+
ethermanconfig "github.com/agglayer/aggkit/etherman/config"
1315
"github.com/agglayer/aggkit/log"
1416
"github.com/agglayer/aggkit/reorgdetector"
1517
"github.com/agglayer/aggkit/test/helpers"
@@ -23,6 +25,12 @@ import (
2325
"github.com/stretchr/testify/require"
2426
)
2527

28+
var (
29+
ethClientConfig = &ethermanconfig.RPCClientConfig{
30+
HashFromJSON: false,
31+
}
32+
)
33+
2634
func TestBridgeEventE2E(t *testing.T) {
2735
const (
2836
blockTime = time.Millisecond * 10
@@ -102,7 +110,7 @@ func TestBridgeEventE2E(t *testing.T) {
102110
time.Sleep(time.Second * 2) // sleeping since the processor could be up to date, but have pending reorgs
103111

104112
lb := getFinalizedBlockNumber(t, ctx, l1Setup.SimBackend.Client())
105-
helpers.RequireProcessorUpdated(t, l1Setup.BridgeSync, lb, l1Setup.SimBackend.Client())
113+
helpers.RequireProcessorUpdated(t, l1Setup.BridgeSync, lb, etherman.NewDefaultEthClient(l1Setup.SimBackend.Client(), nil, nil))
106114

107115
// Get bridges
108116
lastBlock, err := l1Setup.SimBackend.Client().BlockNumber(ctx)
@@ -145,7 +153,7 @@ func TestBridgeL1SyncerWithReorgDetector(t *testing.T) {
145153
//nolint:dogsled
146154
client, auth, _, _, bridgeAddr, bridgeContract, _ := helpers.NewSimulatedL1(t)
147155

148-
rd, err := reorgdetector.New(client.Client(), reorgdetector.Config{
156+
rd, err := reorgdetector.New(etherman.NewDefaultEthClient(client.Client(), nil, nil), reorgdetector.Config{
149157
DBPath: dbPathReorg,
150158
CheckReorgsInterval: cfgtypes.NewDuration(time.Millisecond * 10),
151159
FinalizedBlock: aggkittypes.FinalizedBlock,
@@ -174,7 +182,7 @@ func TestBridgeL1SyncerWithReorgDetector(t *testing.T) {
174182
require.True(t, ok)
175183
arg.Input = bridgesync.BridgeAssetMethodID
176184
}).Return(nil)
177-
ethClient := aggkittypes.NewDefaultEthClient(client.Client(), rpcClient)
185+
ethClient := etherman.NewDefaultEthClient(client.Client(), rpcClient, ethClientConfig)
178186

179187
// Create the bridge syncer with reorg detector
180188
syncer, err := bridgesync.NewL1(ctx, bridgeSyncCfg, rd, ethClient, originNetwork)
@@ -324,7 +332,7 @@ func TestReorgWithSameHashEdgeCase(t *testing.T) {
324332
//nolint:dogsled
325333
client, auth, _, _, bridgeAddr, bridgeContract, _ := helpers.NewSimulatedL1(t)
326334

327-
rd, err := reorgdetector.New(client.Client(), reorgdetector.Config{
335+
rd, err := reorgdetector.New(etherman.NewDefaultEthClient(client.Client(), nil, nil), reorgdetector.Config{
328336
DBPath: dbPathReorg,
329337
CheckReorgsInterval: cfgtypes.NewDuration(time.Millisecond * 10),
330338
FinalizedBlock: aggkittypes.FinalizedBlock,
@@ -353,7 +361,7 @@ func TestReorgWithSameHashEdgeCase(t *testing.T) {
353361
require.True(t, ok)
354362
arg.Input = bridgesync.BridgeAssetMethodID
355363
}).Return(nil)
356-
ethClient := aggkittypes.NewDefaultEthClient(client.Client(), rpcClient)
364+
ethClient := etherman.NewDefaultEthClient(client.Client(), rpcClient, ethClientConfig)
357365
syncer, err := bridgesync.NewL1(ctx, bridgeSyncCfg, rd, ethClient, originNetwork)
358366
require.NoError(t, err)
359367
require.NotNil(t, syncer)
@@ -435,7 +443,7 @@ func TestBridgeL1SyncerWithMultipleReorgs(t *testing.T) {
435443
//nolint:dogsled
436444
client, auth, _, _, bridgeAddr, bridgeContract, _ := helpers.NewSimulatedL1(t)
437445

438-
rd, err := reorgdetector.New(client.Client(), reorgdetector.Config{
446+
rd, err := reorgdetector.New(etherman.NewDefaultEthClient(client.Client(), nil, nil), reorgdetector.Config{
439447
DBPath: dbPathReorg,
440448
CheckReorgsInterval: cfgtypes.NewDuration(time.Millisecond * 10),
441449
FinalizedBlock: aggkittypes.FinalizedBlock,
@@ -464,8 +472,7 @@ func TestBridgeL1SyncerWithMultipleReorgs(t *testing.T) {
464472
require.True(t, ok)
465473
arg.Input = bridgesync.BridgeAssetMethodID
466474
}).Return(nil)
467-
ethClient := aggkittypes.NewDefaultEthClient(client.Client(), rpcClient)
468-
475+
ethClient := etherman.NewDefaultEthClient(client.Client(), rpcClient, ethClientConfig)
469476
// Create the bridge syncer with reorg detector
470477
syncer, err := bridgesync.NewL1(ctx, bridgeSyncCfg, rd, ethClient, originNetwork)
471478
require.NoError(t, err)

0 commit comments

Comments
 (0)