Skip to content

Commit 20b8425

Browse files
committed
fixup! feat(ipld): vouchers as plain ipld.Node
1 parent 3c42ed0 commit 20b8425

File tree

4 files changed

+46
-38
lines changed

4 files changed

+46
-38
lines changed

impl/integration_test.go

+18-11
Original file line numberDiff line numberDiff line change
@@ -1177,11 +1177,12 @@ func TestRoundTripCancelledRequest(t *testing.T) {
11771177

11781178
type retrievalRevalidator struct {
11791179
*testutil.StubbedValidator
1180-
providerPausePoint int
1181-
pausePoints []uint64
1182-
leavePausedInitially bool
1183-
initialVoucherResult ipld.Node
1184-
requiresFinalization bool
1180+
providerPausePoint int
1181+
pausePoints []uint64
1182+
leavePausedInitially bool
1183+
initialVoucherResult ipld.Node
1184+
initialVoucherResultType datatransfer.TypeIdentifier
1185+
requiresFinalization bool
11851186
}
11861187

11871188
func (r *retrievalRevalidator) ValidatePush(
@@ -1195,6 +1196,7 @@ func (r *retrievalRevalidator) ValidatePush(
11951196
RequiresFinalization: r.requiresFinalization,
11961197
ForcePause: r.leavePausedInitially,
11971198
VoucherResult: r.initialVoucherResult,
1199+
VoucherResultType: r.initialVoucherResultType,
11981200
}
11991201
if len(r.pausePoints) > r.providerPausePoint {
12001202
vr.DataLimit = r.pausePoints[r.providerPausePoint]
@@ -1215,6 +1217,7 @@ func (r *retrievalRevalidator) ValidatePull(
12151217
RequiresFinalization: r.requiresFinalization,
12161218
ForcePause: r.leavePausedInitially,
12171219
VoucherResult: r.initialVoucherResult,
1220+
VoucherResultType: r.initialVoucherResultType,
12181221
}
12191222
if len(r.pausePoints) > r.providerPausePoint {
12201223
vr.DataLimit = r.pausePoints[r.providerPausePoint]
@@ -2031,6 +2034,7 @@ func TestMultipleMessagesInExtension(t *testing.T) {
20312034
// The first one is sent as a response from the initial request telling the client
20322035
// the provider has accepted the request and is starting to send blocks
20332036
respVoucher := testutil.NewTestVoucher()
2037+
respVoucherType := testutil.TestVoucherType
20342038
require.NoError(t, err)
20352039

20362040
// voucher results are sent by the providers to request payment while pausing until a voucher is sent
@@ -2089,10 +2093,11 @@ func TestMultipleMessagesInExtension(t *testing.T) {
20892093
providerFinished := make(chan struct{}, 1)
20902094
nextVoucherResult := 0
20912095
sv := &retrievalRevalidator{
2092-
StubbedValidator: testutil.NewStubbedValidator(),
2093-
pausePoints: pausePoints,
2094-
requiresFinalization: true,
2095-
initialVoucherResult: respVoucher,
2096+
StubbedValidator: testutil.NewStubbedValidator(),
2097+
pausePoints: pausePoints,
2098+
requiresFinalization: true,
2099+
initialVoucherResult: respVoucher,
2100+
initialVoucherResultType: respVoucherType,
20962101
}
20972102
dt1.SubscribeToEvents(func(event datatransfer.Event, channelState datatransfer.ChannelState) {
20982103
if event.Code == datatransfer.Error {
@@ -2169,15 +2174,17 @@ func TestMultipleParallelTransfers(t *testing.T) {
21692174
// The first one is sent as a response from the initial request telling the client
21702175
// the provider has accepted the request and is starting to send blocks
21712176
respVoucher := testutil.NewTestVoucher()
2177+
respVoucherType := testutil.TestVoucherType
21722178
require.NoError(t, err)
21732179

21742180
// The final voucher result is sent by the provider to let the client know the deal is completed
21752181
finalVoucherResult := testutil.NewTestVoucher()
21762182
require.NoError(t, err)
21772183

21782184
sv := &retrievalRevalidator{
2179-
StubbedValidator: testutil.NewStubbedValidator(),
2180-
initialVoucherResult: respVoucher,
2185+
StubbedValidator: testutil.NewStubbedValidator(),
2186+
initialVoucherResult: respVoucher,
2187+
initialVoucherResultType: respVoucherType,
21812188
}
21822189
require.NoError(t, dt1.RegisterVoucherType(testutil.TestVoucherType, sv))
21832190

impl/responding_test.go

+25-25
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ func TestDataTransferResponding(t *testing.T) {
4040
},
4141
configureValidator: func(sv *testutil.StubbedValidator) {
4242
sv.ExpectSuccessPush()
43-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
43+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
4444
},
4545
verify: func(t *testing.T, h *receiverHarness) {
4646
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -73,7 +73,7 @@ func TestDataTransferResponding(t *testing.T) {
7373
"new push request rejects": {
7474
configureValidator: func(sv *testutil.StubbedValidator) {
7575
sv.ExpectSuccessPush()
76-
sv.StubResult(datatransfer.ValidationResult{Accepted: false, VoucherResult: testutil.NewTestVoucher()})
76+
sv.StubResult(datatransfer.ValidationResult{Accepted: false, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
7777
},
7878
verify: func(t *testing.T, h *receiverHarness) {
7979
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -94,7 +94,7 @@ func TestDataTransferResponding(t *testing.T) {
9494
"new push request errors": {
9595
configureValidator: func(sv *testutil.StubbedValidator) {
9696
sv.ExpectErrorPush()
97-
sv.StubResult(datatransfer.ValidationResult{VoucherResult: testutil.NewTestVoucher()})
97+
sv.StubResult(datatransfer.ValidationResult{VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
9898
},
9999
verify: func(t *testing.T, h *receiverHarness) {
100100
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -115,7 +115,7 @@ func TestDataTransferResponding(t *testing.T) {
115115
"new push request pauses": {
116116
configureValidator: func(sv *testutil.StubbedValidator) {
117117
sv.ExpectSuccessPush()
118-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, ForcePause: true, VoucherResult: testutil.NewTestVoucher()})
118+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, ForcePause: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
119119
},
120120
verify: func(t *testing.T, h *receiverHarness) {
121121
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -277,7 +277,7 @@ func TestDataTransferResponding(t *testing.T) {
277277
},
278278
configureValidator: func(sv *testutil.StubbedValidator) {
279279
sv.ExpectSuccessPush()
280-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
280+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
281281
},
282282
verify: func(t *testing.T, h *receiverHarness) {
283283
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -294,7 +294,7 @@ func TestDataTransferResponding(t *testing.T) {
294294
datatransfer.ResumeInitiator},
295295
configureValidator: func(sv *testutil.StubbedValidator) {
296296
sv.ExpectSuccessPush()
297-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
297+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
298298
},
299299
verify: func(t *testing.T, h *receiverHarness) {
300300
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -314,7 +314,7 @@ func TestDataTransferResponding(t *testing.T) {
314314
datatransfer.ResumeInitiator},
315315
configureValidator: func(sv *testutil.StubbedValidator) {
316316
sv.ExpectSuccessPush()
317-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
317+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
318318
},
319319
verify: func(t *testing.T, h *receiverHarness) {
320320
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -336,7 +336,7 @@ func TestDataTransferResponding(t *testing.T) {
336336
},
337337
configureValidator: func(sv *testutil.StubbedValidator) {
338338
sv.ExpectSuccessPush()
339-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
339+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
340340
},
341341
verify: func(t *testing.T, h *receiverHarness) {
342342
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -362,7 +362,7 @@ func TestDataTransferResponding(t *testing.T) {
362362
},
363363
configureValidator: func(sv *testutil.StubbedValidator) {
364364
sv.ExpectSuccessPush()
365-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, DataLimit: 1000, VoucherResult: testutil.NewTestVoucher()})
365+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, DataLimit: 1000, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
366366
},
367367
verify: func(t *testing.T, h *receiverHarness) {
368368
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -379,7 +379,7 @@ func TestDataTransferResponding(t *testing.T) {
379379
response, err = h.transport.EventHandler.OnRequestReceived(channelID(h.id, h.peers), h.voucherUpdate)
380380
require.NoError(t, err, nil)
381381
require.Nil(t, response)
382-
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: true, DataLimit: 50000, VoucherResult: testutil.NewTestVoucher()})
382+
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: true, DataLimit: 50000, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
383383
require.NoError(t, err)
384384
require.Len(t, h.transport.ResumedChannels, 1)
385385
resCh := h.transport.ResumedChannels[0]
@@ -411,7 +411,7 @@ func TestDataTransferResponding(t *testing.T) {
411411
},
412412
configureValidator: func(sv *testutil.StubbedValidator) {
413413
sv.ExpectSuccessPush()
414-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, DataLimit: 1000, VoucherResult: testutil.NewTestVoucher()})
414+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, DataLimit: 1000, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
415415
},
416416
verify: func(t *testing.T, h *receiverHarness) {
417417
h.network.Delegate.ReceiveRequest(h.ctx, h.peers[1], h.pushRequest)
@@ -428,7 +428,7 @@ func TestDataTransferResponding(t *testing.T) {
428428
response, err = h.transport.EventHandler.OnRequestReceived(channelID(h.id, h.peers), h.voucherUpdate)
429429
require.NoError(t, err, nil)
430430
require.Nil(t, response)
431-
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: false, VoucherResult: testutil.NewTestVoucher()})
431+
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: false, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
432432
require.NoError(t, err)
433433
require.Len(t, h.transport.ClosedChannels, 1)
434434
require.Equal(t, h.transport.ClosedChannels[0], channelID(h.id, h.peers))
@@ -461,7 +461,7 @@ func TestDataTransferResponding(t *testing.T) {
461461
},
462462
configureValidator: func(sv *testutil.StubbedValidator) {
463463
sv.ExpectSuccessPull()
464-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, DataLimit: 1000, VoucherResult: testutil.NewTestVoucher()})
464+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, DataLimit: 1000, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
465465
},
466466
verify: func(t *testing.T, h *receiverHarness) {
467467
_, err := h.transport.EventHandler.OnRequestReceived(channelID(h.id, h.peers), h.pullRequest)
@@ -481,7 +481,7 @@ func TestDataTransferResponding(t *testing.T) {
481481
response, err = h.transport.EventHandler.OnRequestReceived(channelID(h.id, h.peers), h.voucherUpdate)
482482
require.NoError(t, err, nil)
483483
require.Nil(t, response)
484-
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: true, DataLimit: 50000, VoucherResult: testutil.NewTestVoucher()})
484+
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: true, DataLimit: 50000, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
485485
require.NoError(t, err)
486486
require.Len(t, h.transport.ResumedChannels, 1)
487487
resCh := h.transport.ResumedChannels[0]
@@ -512,7 +512,7 @@ func TestDataTransferResponding(t *testing.T) {
512512
},
513513
configureValidator: func(sv *testutil.StubbedValidator) {
514514
sv.ExpectSuccessPull()
515-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, RequiresFinalization: true, VoucherResult: testutil.NewTestVoucher()})
515+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, RequiresFinalization: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
516516
},
517517
verify: func(t *testing.T, h *receiverHarness) {
518518
_, err := h.transport.EventHandler.OnRequestReceived(channelID(h.id, h.peers), h.pullRequest)
@@ -533,7 +533,7 @@ func TestDataTransferResponding(t *testing.T) {
533533
response, err = h.transport.EventHandler.OnRequestReceived(channelID(h.id, h.peers), h.voucherUpdate)
534534
require.NoError(t, err, nil)
535535
require.Nil(t, response)
536-
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
536+
err = h.dt.UpdateValidationStatus(ctx, channelID(h.id, h.peers), datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
537537
require.NoError(t, err)
538538
require.Len(t, h.network.SentMessages, 2)
539539
sentMsg := h.network.SentMessages[1]
@@ -698,9 +698,9 @@ func TestDataTransferRestartResponding(t *testing.T) {
698698
},
699699
configureValidator: func(sv *testutil.StubbedValidator) {
700700
sv.ExpectSuccessPush()
701-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
701+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
702702
sv.ExpectSuccessValidateRestart()
703-
sv.StubRestartResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
703+
sv.StubRestartResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
704704
},
705705
verify: func(t *testing.T, h *receiverHarness) {
706706
// receive an incoming push
@@ -759,9 +759,9 @@ func TestDataTransferRestartResponding(t *testing.T) {
759759
},
760760
configureValidator: func(sv *testutil.StubbedValidator) {
761761
sv.ExpectSuccessPull()
762-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
762+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
763763
sv.ExpectSuccessValidateRestart()
764-
sv.StubRestartResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
764+
sv.StubRestartResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
765765
},
766766
verify: func(t *testing.T, h *receiverHarness) {
767767
// receive an incoming pull
@@ -802,7 +802,7 @@ func TestDataTransferRestartResponding(t *testing.T) {
802802
},
803803
configureValidator: func(sv *testutil.StubbedValidator) {
804804
sv.ExpectSuccessPull()
805-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
805+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
806806
},
807807
verify: func(t *testing.T, h *receiverHarness) {
808808
// receive an incoming pull
@@ -831,7 +831,7 @@ func TestDataTransferRestartResponding(t *testing.T) {
831831
},
832832
configureValidator: func(sv *testutil.StubbedValidator) {
833833
sv.ExpectSuccessPull()
834-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
834+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
835835
sv.ExpectSuccessValidateRestart()
836836
sv.StubRestartResult(datatransfer.ValidationResult{Accepted: false})
837837
},
@@ -859,7 +859,7 @@ func TestDataTransferRestartResponding(t *testing.T) {
859859
},
860860
configureValidator: func(sv *testutil.StubbedValidator) {
861861
sv.ExpectSuccessPull()
862-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
862+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
863863
},
864864
verify: func(t *testing.T, h *receiverHarness) {
865865
// receive an incoming pull
@@ -886,7 +886,7 @@ func TestDataTransferRestartResponding(t *testing.T) {
886886
},
887887
configureValidator: func(sv *testutil.StubbedValidator) {
888888
sv.ExpectSuccessPull()
889-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
889+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
890890
},
891891
verify: func(t *testing.T, h *receiverHarness) {
892892
// receive an incoming pull
@@ -913,7 +913,7 @@ func TestDataTransferRestartResponding(t *testing.T) {
913913
},
914914
configureValidator: func(sv *testutil.StubbedValidator) {
915915
sv.ExpectSuccessPull()
916-
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher()})
916+
sv.StubResult(datatransfer.ValidationResult{Accepted: true, VoucherResult: testutil.NewTestVoucher(), VoucherResultType: testutil.TestVoucherType})
917917
},
918918
verify: func(t *testing.T, h *receiverHarness) {
919919
// receive an incoming pull

message/message1_1prime/transfer_message.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func (tm *TransferMessage1_1) ToIPLD() (ipld.Node, error) {
4646
if err != nil {
4747
return nil, err
4848
}
49-
return node.(schema.TypedNode).Representation(), nil
49+
return node.Representation(), nil
5050
}
5151

5252
// ToNet serializes a transfer message type.

network/libp2p_impl_test.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,8 @@ func TestMessageSendAndReceive(t *testing.T) {
132132
accepted := false
133133
id := datatransfer.TransferID(rand.Int31())
134134
voucherResult := testutil.NewTestVoucher()
135-
response, err := message.ValidationResultResponse(types.NewMessage, id, datatransfer.ValidationResult{Accepted: accepted, VoucherResult: voucherResult}, nil, false)
135+
voucherResultType := testutil.TestVoucherType
136+
response, err := message.ValidationResultResponse(types.NewMessage, id, datatransfer.ValidationResult{Accepted: accepted, VoucherResult: voucherResult, VoucherResultType: voucherResultType}, nil, false)
136137
require.NoError(t, err)
137138
require.NoError(t, dtnet2.SendMessage(ctx, host1.ID(), response))
138139

0 commit comments

Comments
 (0)