Skip to content

Commit 9f8c649

Browse files
committed
Fix test, cleanup, fix dest domains.
1 parent 49ae56f commit 9f8c649

File tree

2 files changed

+11
-22
lines changed

2 files changed

+11
-22
lines changed

pkg/reader/usdc_reader.go

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ type evmUSDCMessageReader struct {
5050
lggr logger.Logger
5151
contractReader contractreader.ContractReaderFacade
5252
cctpDestDomain map[uint64]uint32
53-
boundContracts map[cciptypes.ChainSelector]types.BoundContract
53+
boundContract types.BoundContract
5454
}
5555

5656
type eventID [32]byte
@@ -81,8 +81,8 @@ func NewUSDCMessageReader(
8181
contractReaders map[cciptypes.ChainSelector]contractreader.ContractReaderFacade,
8282
addrCodec cciptypes.AddressCodec,
8383
) (USDCMessageReader, error) {
84-
boundContracts := make(map[cciptypes.ChainSelector]types.BoundContract)
8584
readers := make(map[cciptypes.ChainSelector]USDCMessageReader)
85+
domains := AllAvailableDomains()
8686
for chainSelector, token := range tokensConfig {
8787
family, err := sel.GetSelectorFamily(uint64(chainSelector))
8888
if err != nil {
@@ -107,13 +107,11 @@ func NewUSDCMessageReader(
107107
if err != nil {
108108
return nil, err
109109
}
110-
boundContracts[chainSelector] = contract
111110
readers[chainSelector] = evmUSDCMessageReader{
112111
lggr: lggr,
113112
contractReader: contractReaders[chainSelector],
114-
// TODO: set domain/bound correctly.
115-
cctpDestDomain: CCTPDestDomains,
116-
boundContracts: boundContracts,
113+
cctpDestDomain: domains,
114+
boundContract: contract,
117115
}
118116
case sel.FamilySolana:
119117
// TODO: Implement Solana USDC message reader
@@ -124,19 +122,15 @@ func NewUSDCMessageReader(
124122
}
125123

126124
return compositeFamilyUSDCMessageReader{
127-
lggr: lggr,
128-
readers: readers,
129-
cctpDestDomain: AllAvailableDomains(),
130-
boundContracts: boundContracts,
125+
lggr: lggr,
126+
readers: readers,
131127
}, nil
132128
}
133129

134130
// compositeFamilyUSDCMessageReader is a USDCMessageReader that can handle different chain families.
135131
type compositeFamilyUSDCMessageReader struct {
136-
lggr logger.Logger
137-
readers map[cciptypes.ChainSelector]USDCMessageReader
138-
cctpDestDomain map[uint64]uint32
139-
boundContracts map[cciptypes.ChainSelector]types.BoundContract
132+
lggr logger.Logger
133+
readers map[cciptypes.ChainSelector]USDCMessageReader
140134
}
141135

142136
func (m compositeFamilyUSDCMessageReader) MessagesByTokenID(
@@ -145,7 +139,7 @@ func (m compositeFamilyUSDCMessageReader) MessagesByTokenID(
145139
tokens map[MessageTokenID]cciptypes.RampTokenAmount,
146140
) (map[MessageTokenID]cciptypes.Bytes, error) {
147141
if _, ok := m.readers[source]; !ok {
148-
return nil, fmt.Errorf("no reader bound for chain %d", source)
142+
return nil, fmt.Errorf("no reader for chain %d", source)
149143
}
150144
return m.readers[source].MessagesByTokenID(ctx, source, dest, tokens)
151145
}
@@ -190,11 +184,6 @@ func (u evmUSDCMessageReader) MessagesByTokenID(
190184

191185
// 2. Query the MessageTransmitter contract for the MessageSent events based on the 3rd words.
192186
// We need entire MessageSent payload to use that with the Attestation API
193-
cr, ok := u.boundContracts[source]
194-
if !ok {
195-
return nil, fmt.Errorf("no contract bound for chain %d", source)
196-
}
197-
198187
expressions := []query.Expression{query.Confidence(primitives.Finalized)}
199188
if len(eventIDsByMsgTokenID) > 0 {
200189
eventIDs := make([]eventID, 0, len(eventIDsByMsgTokenID))
@@ -220,7 +209,7 @@ func (u evmUSDCMessageReader) MessagesByTokenID(
220209

221210
iter, err := u.contractReader.QueryKey(
222211
ctx,
223-
cr,
212+
u.boundContract,
224213
keyFilter,
225214
query.NewLimitAndSort(
226215
query.Limit{Count: uint64(len(eventIDsByMsgTokenID))},

pkg/reader/usdc_reader_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ func Test_USDCMessageReader_MessagesByTokenID(t *testing.T) {
230230
name: "should return error when CCTP domain is not supported",
231231
sourceSelector: cciptypes.ChainSelector(sel.POLYGON_MAINNET.Selector),
232232
destSelector: emptyChain,
233-
errorMessage: fmt.Sprintf("no contract bound for chain %d", sel.POLYGON_MAINNET.Selector),
233+
errorMessage: fmt.Sprintf("no reader for chain %d", sel.POLYGON_MAINNET.Selector),
234234
},
235235
{
236236
name: "valid chain return events but nothing is matched",

0 commit comments

Comments
 (0)