Skip to content

Commit 3e26bd2

Browse files
committed
itest: utilize more options when paying with satoshi
1 parent 16b5b84 commit 3e26bd2

File tree

2 files changed

+22
-16
lines changed

2 files changed

+22
-16
lines changed

itest/assets_test.go

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1388,7 +1388,7 @@ func sendKeySendPayment(t *testing.T, src, dst *HarnessNode,
13881388
stream, err := src.RouterClient.SendPaymentV2(ctxt, req)
13891389
require.NoError(t, err)
13901390

1391-
result, err := getFinalPaymentResult(stream)
1391+
result, err := getPaymentResult(stream, false)
13921392
require.NoError(t, err)
13931393
require.Equal(t, lnrpc.Payment_SUCCEEDED, result.Status)
13941394
}
@@ -1448,13 +1448,20 @@ func payPayReqWithSatoshi(t *testing.T, payer *HarnessNode, payReq string,
14481448
ctxt, cancel := context.WithTimeout(ctxb, defaultTimeout)
14491449
defer cancel()
14501450

1451+
shardSize := uint64(0)
1452+
1453+
if cfg.smallShards {
1454+
shardSize = 80_000_000
1455+
}
1456+
14511457
sendReq := &routerrpc.SendPaymentRequest{
14521458
PaymentRequest: payReq,
14531459
TimeoutSeconds: int32(PaymentTimeout.Seconds()),
14541460
FeeLimitMsat: 1_000_000,
14551461
MaxParts: cfg.maxShards,
14561462
OutgoingChanIds: cfg.outgoingChanIDs,
14571463
AllowSelfPayment: cfg.allowSelfPayment,
1464+
MaxShardSizeMsat: shardSize,
14581465
}
14591466

14601467
if cfg.smallShards {
@@ -1464,17 +1471,9 @@ func payPayReqWithSatoshi(t *testing.T, payer *HarnessNode, payReq string,
14641471
stream, err := payer.RouterClient.SendPaymentV2(ctxt, sendReq)
14651472
require.NoError(t, err)
14661473

1467-
if cfg.payStatus == lnrpc.Payment_IN_FLIGHT {
1468-
t.Logf("Waiting for initial stream response...")
1469-
result, err := stream.Recv()
1470-
require.NoError(t, err)
1471-
1472-
require.Equal(t, cfg.payStatus, result.Status)
1473-
1474-
return
1475-
}
1476-
1477-
result, err := getFinalPaymentResult(stream)
1474+
result, err := getPaymentResult(
1475+
stream, cfg.payStatus == lnrpc.Payment_IN_FLIGHT,
1476+
)
14781477
if cfg.errSubStr != "" {
14791478
require.ErrorContains(t, err, cfg.errSubStr)
14801479
} else {

itest/litd_accounts_test.go

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -416,21 +416,28 @@ func payNode(invoiceCtx, paymentCtx context.Context, t *harnessTest,
416416
stream, err := from.SendPaymentV2(paymentCtx, sendReq)
417417
require.NoError(t.t, err)
418418

419-
result, err := getFinalPaymentResult(stream)
419+
result, err := getPaymentResult(stream, false)
420420
require.NoError(t.t, err)
421421
require.Equal(t.t, result.Status, lnrpc.Payment_SUCCEEDED)
422422
}
423423

424-
func getFinalPaymentResult(stream routerrpc.Router_SendPaymentV2Client) (
425-
*lnrpc.Payment, error) {
424+
func getPaymentResult(stream routerrpc.Router_SendPaymentV2Client,
425+
isHodl bool) (*lnrpc.Payment, error) {
426426

427427
for {
428428
payment, err := stream.Recv()
429429
if err != nil {
430430
return nil, err
431431
}
432432

433-
if payment.Status != lnrpc.Payment_IN_FLIGHT {
433+
// If this is a hodl payment, then we'll return the first
434+
// expected response. Otherwise, we'll wait until the in flight
435+
// clears to we can observe the other payment states.
436+
switch {
437+
case isHodl:
438+
return payment, nil
439+
440+
case payment.Status != lnrpc.Payment_IN_FLIGHT:
434441
return payment, nil
435442
}
436443
}

0 commit comments

Comments
 (0)