@@ -16,11 +16,12 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
16
16
function _getQueryFeeEncodedData (
17
17
uint256 _signerPrivateKey ,
18
18
address _payer ,
19
- address _indexer ,
20
19
address _collector ,
20
+ address _indexer ,
21
+ address _dataService ,
21
22
uint128 _tokens
22
23
) private view returns (bytes memory ) {
23
- ITAPCollector.ReceiptAggregateVoucher memory rav = _getRAV (_payer, _indexer, _collector , _tokens);
24
+ ITAPCollector.ReceiptAggregateVoucher memory rav = _getRAV (_payer, _collector, _indexer, _dataService , _tokens);
24
25
bytes32 messageHash = tapCollector.encodeRAV (rav);
25
26
(uint8 v , bytes32 r , bytes32 s ) = vm.sign (_signerPrivateKey, messageHash);
26
27
bytes memory signature = abi.encodePacked (r, s, v);
@@ -30,14 +31,16 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
30
31
31
32
function _getRAV (
32
33
address _payer ,
33
- address _indexer ,
34
34
address _collector ,
35
+ address _indexer ,
36
+ address _dataService ,
35
37
uint128 _tokens
36
38
) private pure returns (ITAPCollector.ReceiptAggregateVoucher memory rav ) {
37
39
return
38
40
ITAPCollector.ReceiptAggregateVoucher ({
39
41
payer: _payer,
40
- dataService: _collector,
42
+ collector: _collector,
43
+ dataService: _dataService,
41
44
serviceProvider: _indexer,
42
45
timestampNs: 0 ,
43
46
valueAggregate: _tokens,
@@ -59,6 +62,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
59
62
bytes memory data = _getQueryFeeEncodedData (
60
63
signerPrivateKey,
61
64
users.gateway,
65
+ address (tapCollector),
62
66
users.indexer,
63
67
users.verifier,
64
68
uint128 (tokens)
@@ -84,6 +88,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
84
88
bytes memory data = _getQueryFeeEncodedData (
85
89
signerPrivateKey,
86
90
users.gateway,
91
+ address (tapCollector),
87
92
users.indexer,
88
93
users.verifier,
89
94
uint128 (payed + tokensPerStep)
@@ -93,6 +98,27 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
93
98
}
94
99
}
95
100
101
+ function testTAPCollector_Collect_RevertWhen_OtherCollector () public useGateway useSigner {
102
+ address otherCollector = makeAddr ("otherCollector " );
103
+ bytes memory data = _getQueryFeeEncodedData (
104
+ signerPrivateKey,
105
+ users.gateway,
106
+ otherCollector,
107
+ users.indexer,
108
+ users.verifier,
109
+ uint128 (0 )
110
+ );
111
+
112
+ resetPrank (users.verifier);
113
+ bytes memory expectedError = abi.encodeWithSelector (
114
+ ITAPCollector.TAPCollectorInvalidCollector.selector ,
115
+ address (tapCollector),
116
+ otherCollector
117
+ );
118
+ vm.expectRevert (expectedError);
119
+ tapCollector.collect (IGraphPayments.PaymentTypes.QueryFee, data);
120
+ }
121
+
96
122
function testTAPCollector_Collect_RevertWhen_NoProvision (uint256 tokens ) public useGateway useSigner {
97
123
tokens = bound (tokens, 1 , type (uint128 ).max);
98
124
@@ -101,6 +127,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
101
127
bytes memory data = _getQueryFeeEncodedData (
102
128
signerPrivateKey,
103
129
users.gateway,
130
+ address (tapCollector),
104
131
users.indexer,
105
132
users.verifier,
106
133
uint128 (tokens)
@@ -130,6 +157,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
130
157
bytes memory data = _getQueryFeeEncodedData (
131
158
signerPrivateKey,
132
159
users.gateway,
160
+ address (tapCollector),
133
161
users.indexer,
134
162
users.verifier,
135
163
uint128 (tokens)
@@ -164,6 +192,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
164
192
bytes memory data = _getQueryFeeEncodedData (
165
193
anotherSignerPrivateKey,
166
194
users.gateway,
195
+ address (tapCollector),
167
196
users.indexer,
168
197
anotherSigner,
169
198
uint128 (tokens)
@@ -188,6 +217,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
188
217
bytes memory data = _getQueryFeeEncodedData (
189
218
signerPrivateKey,
190
219
users.gateway,
220
+ address (tapCollector),
191
221
users.indexer,
192
222
users.verifier,
193
223
uint128 (tokens)
@@ -215,6 +245,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
215
245
bytes memory data = _getQueryFeeEncodedData (
216
246
signerPrivateKey,
217
247
anotherPayer,
248
+ address (tapCollector),
218
249
users.indexer,
219
250
users.verifier,
220
251
uint128 (tokens)
@@ -239,6 +270,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
239
270
bytes memory data = _getQueryFeeEncodedData (
240
271
signerPrivateKey,
241
272
users.gateway,
273
+ address (tapCollector),
242
274
users.indexer,
243
275
users.verifier,
244
276
uint128 (tokens)
@@ -262,6 +294,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
262
294
bytes memory data = _getQueryFeeEncodedData (
263
295
signerPrivateKey,
264
296
users.gateway,
297
+ address (tapCollector),
265
298
users.indexer,
266
299
users.verifier,
267
300
uint128 (tokens)
@@ -286,6 +319,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
286
319
bytes memory data = _getQueryFeeEncodedData (
287
320
signerPrivateKey,
288
321
users.gateway,
322
+ address (tapCollector),
289
323
users.indexer,
290
324
users.verifier,
291
325
uint128 (tokens)
@@ -308,6 +342,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
308
342
bytes memory data = _getQueryFeeEncodedData (
309
343
signerPrivateKey,
310
344
users.gateway,
345
+ address (tapCollector),
311
346
users.indexer,
312
347
users.verifier,
313
348
uint128 (tokens)
@@ -333,6 +368,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
333
368
bytes memory data = _getQueryFeeEncodedData (
334
369
signerPrivateKey,
335
370
users.gateway,
371
+ address (tapCollector),
336
372
users.indexer,
337
373
users.verifier,
338
374
uint128 (tokens)
@@ -354,6 +390,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
354
390
bytes memory data = _getQueryFeeEncodedData (
355
391
signerPrivateKey,
356
392
users.gateway,
393
+ address (tapCollector),
357
394
users.indexer,
358
395
users.verifier,
359
396
uint128 (tokens)
@@ -374,6 +411,7 @@ contract TAPCollectorCollectTest is TAPCollectorTest {
374
411
bytes memory data = _getQueryFeeEncodedData (
375
412
signerPrivateKey,
376
413
users.gateway,
414
+ address (tapCollector),
377
415
users.indexer,
378
416
users.verifier,
379
417
uint128 (tokens)
0 commit comments