From 2eadbfb54df992deecfc5bd9fbc1863300c46713 Mon Sep 17 00:00:00 2001 From: ziggie Date: Wed, 15 Oct 2025 18:59:26 +0200 Subject: [PATCH] paymentsdb: fix test case before testing sql backend We are now not supporting the LegacyPayload for the onion packet anymore. All payments and their onion payload need to be tlv encoded. The sql backend assumes tlv so we have to always set the in memory presentation of a hop where the legacy parameter is still available but deprecated to false, otherwise the hops will not be equal and unit tests for the sql backend will fail when switched on in the next commits. --- payments/db/payment_test.go | 7 +++++-- routing/route/route.go | 3 +++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/payments/db/payment_test.go b/payments/db/payment_test.go index 2c2d668aa..df922a455 100644 --- a/payments/db/payment_test.go +++ b/payments/db/payment_test.go @@ -59,7 +59,10 @@ var ( ChannelID: 12345, OutgoingTimeLock: 111, AmtToForward: 555, - LegacyPayload: true, + + // Only tlv payloads are now supported in LND therefore we set + // LegacyPayload to false. + LegacyPayload: false, } testRoute = route.Route{ @@ -2203,7 +2206,7 @@ func TestMultiShard(t *testing.T) { // Finally assert we cannot register more attempts. _, err = paymentDB.RegisterAttempt(info.PaymentIdentifier, b) - require.Equal(t, registerErr, err) + require.ErrorIs(t, err, registerErr) } for _, test := range tests { diff --git a/routing/route/route.go b/routing/route/route.go index 1bb52badb..a575c415b 100644 --- a/routing/route/route.go +++ b/routing/route/route.go @@ -164,6 +164,9 @@ type Hop struct { // The only reason we are keeping this member is that it could be the // case that we have serialised hops persisted to disk where // LegacyPayload is true. + // + // TODO(ziggie): Remove this field once we phase out the kv backend + // for payments. LegacyPayload bool // Metadata is additional data that is sent along with the payment to