multi: move FailureReason to payment package
This commit is contained in:
19 files changed
+134
-140
No files matched your search
@@ -39,7 +39,7 @@ type DBMPPayment interface {
|
||||
|
||||
// TerminalInfo returns the settled HTLC attempt or the payment's
|
||||
// failure reason.
|
||||
TerminalInfo() (*paymentsdb.HTLCAttempt, *channeldb.FailureReason)
|
||||
TerminalInfo() (*paymentsdb.HTLCAttempt, *paymentsdb.FailureReason)
|
||||
}
|
||||
|
||||
// ControlTower tracks all outgoing payments made, whose primary purpose is to
|
||||
@@ -85,7 +85,7 @@ type ControlTower interface {
|
||||
// invoking this method, InitPayment should return nil on its next call
|
||||
// for this payment hash, allowing the user to make a subsequent
|
||||
// payment.
|
||||
FailPayment(lntypes.Hash, channeldb.FailureReason) error
|
||||
FailPayment(lntypes.Hash, paymentsdb.FailureReason) error
|
||||
|
||||
// FetchInFlightPayments returns all payments with status InFlight.
|
||||
FetchInFlightPayments() ([]*paymentsdb.MPPayment, error)
|
||||
@@ -287,7 +287,7 @@ func (p *controlTower) FetchPayment(paymentHash lntypes.Hash) (
|
||||
// NOTE: This method will overwrite the failure reason if the payment is already
|
||||
// failed.
|
||||
func (p *controlTower) FailPayment(paymentHash lntypes.Hash,
|
||||
reason channeldb.FailureReason) error {
|
||||
reason paymentsdb.FailureReason) error {
|
||||
|
||||
p.paymentsMtx.Lock(paymentHash)
|
||||
defer p.paymentsMtx.Unlock(paymentHash)
|
||||
|
||||
@@ -481,7 +481,7 @@ func testKVPaymentsDBSubscribeFail(t *testing.T, registerAttempt,
|
||||
|
||||
// Mark the payment as failed.
|
||||
err = pControl.FailPayment(
|
||||
info.PaymentIdentifier, channeldb.FailureReasonTimeout,
|
||||
info.PaymentIdentifier, paymentsdb.FailureReasonTimeout,
|
||||
)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@@ -537,7 +537,7 @@ func testKVPaymentsDBSubscribeFail(t *testing.T, registerAttempt,
|
||||
"subscriber %v failed, want %s, got %s", i,
|
||||
paymentsdb.StatusFailed, result.GetStatus())
|
||||
|
||||
if *result.FailureReason != channeldb.FailureReasonTimeout {
|
||||
if *result.FailureReason != paymentsdb.FailureReasonTimeout {
|
||||
t.Fatal("unexpected failure reason")
|
||||
}
|
||||
|
||||
|
||||
@@ -11,11 +11,11 @@ import (
|
||||
"github.com/btcsuite/btcd/btcutil"
|
||||
"github.com/btcsuite/btclog/v2"
|
||||
"github.com/btcsuite/btcwallet/walletdb"
|
||||
"github.com/lightningnetwork/lnd/channeldb"
|
||||
"github.com/lightningnetwork/lnd/clock"
|
||||
"github.com/lightningnetwork/lnd/fn/v2"
|
||||
"github.com/lightningnetwork/lnd/kvdb"
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
paymentsdb "github.com/lightningnetwork/lnd/payments/db"
|
||||
"github.com/lightningnetwork/lnd/routing/route"
|
||||
"github.com/lightningnetwork/lnd/tlv"
|
||||
)
|
||||
@@ -617,7 +617,7 @@ func (m *MissionControl) GetPairHistorySnapshot(
|
||||
// payment attempts need to be made.
|
||||
func (m *MissionControl) ReportPaymentFail(paymentID uint64, rt *route.Route,
|
||||
failureSourceIdx *int, failure lnwire.FailureMessage) (
|
||||
*channeldb.FailureReason, error) {
|
||||
*paymentsdb.FailureReason, error) {
|
||||
|
||||
timestamp := m.cfg.clock.Now()
|
||||
|
||||
@@ -649,7 +649,7 @@ func (m *MissionControl) ReportPaymentSuccess(paymentID uint64,
|
||||
// processPaymentResult stores a payment result in the mission control store and
|
||||
// updates mission control's in-memory state.
|
||||
func (m *MissionControl) processPaymentResult(result *paymentResult) (
|
||||
*channeldb.FailureReason, error) {
|
||||
*paymentsdb.FailureReason, error) {
|
||||
|
||||
// Store complete result in database.
|
||||
m.store.AddResult(result)
|
||||
@@ -667,7 +667,7 @@ func (m *MissionControl) processPaymentResult(result *paymentResult) (
|
||||
// estimates. It returns a bool indicating whether this error is a final error
|
||||
// and no further payment attempts need to be made.
|
||||
func (m *MissionControl) applyPaymentResult(
|
||||
result *paymentResult) *channeldb.FailureReason {
|
||||
result *paymentResult) *paymentsdb.FailureReason {
|
||||
|
||||
// Interpret result.
|
||||
i := interpretResult(&result.route.Val, result.failure.ValOpt())
|
||||
|
||||
+12
-12
@@ -134,12 +134,12 @@ var _ MissionControlQuerier = (*mockMissionControlOld)(nil)
|
||||
func (m *mockMissionControlOld) ReportPaymentFail(
|
||||
paymentID uint64, rt *route.Route,
|
||||
failureSourceIdx *int, failure lnwire.FailureMessage) (
|
||||
*channeldb.FailureReason, error) {
|
||||
*paymentsdb.FailureReason, error) {
|
||||
|
||||
// Report a permanent failure if this is an error caused
|
||||
// by incorrect details.
|
||||
if failure.Code() == lnwire.CodeIncorrectOrUnknownPaymentDetails {
|
||||
reason := channeldb.FailureReasonPaymentDetails
|
||||
reason := paymentsdb.FailureReasonPaymentDetails
|
||||
return &reason, nil
|
||||
}
|
||||
|
||||
@@ -264,7 +264,7 @@ type failAttemptArgs struct {
|
||||
}
|
||||
|
||||
type failPaymentArgs struct {
|
||||
reason channeldb.FailureReason
|
||||
reason paymentsdb.FailureReason
|
||||
}
|
||||
|
||||
type testPayment struct {
|
||||
@@ -275,7 +275,7 @@ type testPayment struct {
|
||||
type mockControlTowerOld struct {
|
||||
payments map[lntypes.Hash]*testPayment
|
||||
successful map[lntypes.Hash]struct{}
|
||||
failed map[lntypes.Hash]channeldb.FailureReason
|
||||
failed map[lntypes.Hash]paymentsdb.FailureReason
|
||||
|
||||
init chan initArgs
|
||||
registerAttempt chan registerAttemptArgs
|
||||
@@ -293,7 +293,7 @@ func makeMockControlTower() *mockControlTowerOld {
|
||||
return &mockControlTowerOld{
|
||||
payments: make(map[lntypes.Hash]*testPayment),
|
||||
successful: make(map[lntypes.Hash]struct{}),
|
||||
failed: make(map[lntypes.Hash]channeldb.FailureReason),
|
||||
failed: make(map[lntypes.Hash]paymentsdb.FailureReason),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -489,7 +489,7 @@ func (m *mockControlTowerOld) FailAttempt(phash lntypes.Hash, pid uint64,
|
||||
}
|
||||
|
||||
func (m *mockControlTowerOld) FailPayment(phash lntypes.Hash,
|
||||
reason channeldb.FailureReason) error {
|
||||
reason paymentsdb.FailureReason) error {
|
||||
|
||||
m.Lock()
|
||||
defer m.Unlock()
|
||||
@@ -664,7 +664,7 @@ var _ MissionControlQuerier = (*mockMissionControl)(nil)
|
||||
func (m *mockMissionControl) ReportPaymentFail(
|
||||
paymentID uint64, rt *route.Route,
|
||||
failureSourceIdx *int, failure lnwire.FailureMessage) (
|
||||
*channeldb.FailureReason, error) {
|
||||
*paymentsdb.FailureReason, error) {
|
||||
|
||||
args := m.Called(paymentID, rt, failureSourceIdx, failure)
|
||||
|
||||
@@ -673,7 +673,7 @@ func (m *mockMissionControl) ReportPaymentFail(
|
||||
return nil, args.Error(1)
|
||||
}
|
||||
|
||||
return args.Get(0).(*channeldb.FailureReason), args.Error(1)
|
||||
return args.Get(0).(*paymentsdb.FailureReason), args.Error(1)
|
||||
}
|
||||
|
||||
func (m *mockMissionControl) ReportPaymentSuccess(paymentID uint64,
|
||||
@@ -779,7 +779,7 @@ func (m *mockControlTower) FailAttempt(phash lntypes.Hash, pid uint64,
|
||||
}
|
||||
|
||||
func (m *mockControlTower) FailPayment(phash lntypes.Hash,
|
||||
reason channeldb.FailureReason) error {
|
||||
reason paymentsdb.FailureReason) error {
|
||||
|
||||
args := m.Called(phash, reason)
|
||||
return args.Error(0)
|
||||
@@ -863,13 +863,13 @@ func (m *mockMPPayment) AllowMoreAttempts() (bool, error) {
|
||||
}
|
||||
|
||||
func (m *mockMPPayment) TerminalInfo() (*paymentsdb.HTLCAttempt,
|
||||
*channeldb.FailureReason) {
|
||||
*paymentsdb.FailureReason) {
|
||||
|
||||
args := m.Called()
|
||||
|
||||
var (
|
||||
settleInfo *paymentsdb.HTLCAttempt
|
||||
failureInfo *channeldb.FailureReason
|
||||
failureInfo *paymentsdb.FailureReason
|
||||
)
|
||||
|
||||
settle := args.Get(0)
|
||||
@@ -879,7 +879,7 @@ func (m *mockMPPayment) TerminalInfo() (*paymentsdb.HTLCAttempt,
|
||||
|
||||
reason := args.Get(1)
|
||||
if reason != nil {
|
||||
failureInfo = reason.(*channeldb.FailureReason)
|
||||
failureInfo = reason.(*paymentsdb.FailureReason)
|
||||
}
|
||||
|
||||
return settleInfo, failureInfo
|
||||
|
||||
@@ -9,7 +9,6 @@ import (
|
||||
"github.com/btcsuite/btcd/btcec/v2"
|
||||
"github.com/davecgh/go-spew/spew"
|
||||
sphinx "github.com/lightningnetwork/lightning-onion"
|
||||
"github.com/lightningnetwork/lnd/channeldb"
|
||||
"github.com/lightningnetwork/lnd/fn/v2"
|
||||
"github.com/lightningnetwork/lnd/graph/db/models"
|
||||
"github.com/lightningnetwork/lnd/htlcswitch"
|
||||
@@ -353,13 +352,13 @@ func (p *paymentLifecycle) checkContext(ctx context.Context) error {
|
||||
// user-provided timeout was reached, or the context was
|
||||
// canceled, either to a manual cancellation or due to an
|
||||
// unknown error.
|
||||
var reason channeldb.FailureReason
|
||||
var reason paymentsdb.FailureReason
|
||||
if errors.Is(ctx.Err(), context.DeadlineExceeded) {
|
||||
reason = channeldb.FailureReasonTimeout
|
||||
reason = paymentsdb.FailureReasonTimeout
|
||||
log.Warnf("Payment attempt not completed before "+
|
||||
"context timeout, id=%s", p.identifier.String())
|
||||
} else {
|
||||
reason = channeldb.FailureReasonCanceled
|
||||
reason = paymentsdb.FailureReasonCanceled
|
||||
log.Warnf("Payment attempt context canceled, id=%s",
|
||||
p.identifier.String())
|
||||
}
|
||||
@@ -795,7 +794,7 @@ func (p *paymentLifecycle) amendFirstHopData(rt *route.Route) error {
|
||||
// failAttemptAndPayment fails both the payment and its attempt via the
|
||||
// router's control tower, which marks the payment as failed in db.
|
||||
func (p *paymentLifecycle) failPaymentAndAttempt(
|
||||
attemptID uint64, reason *channeldb.FailureReason,
|
||||
attemptID uint64, reason *paymentsdb.FailureReason,
|
||||
sendErr error) (*attemptResult, error) {
|
||||
|
||||
log.Errorf("Payment %v failed: final_outcome=%v, raw_err=%v",
|
||||
@@ -827,7 +826,7 @@ func (p *paymentLifecycle) failPaymentAndAttempt(
|
||||
func (p *paymentLifecycle) handleSwitchErr(attempt *paymentsdb.HTLCAttempt,
|
||||
sendErr error) (*attemptResult, error) {
|
||||
|
||||
internalErrorReason := channeldb.FailureReasonError
|
||||
internalErrorReason := paymentsdb.FailureReasonError
|
||||
attemptID := attempt.AttemptID
|
||||
|
||||
// reportAndFail is a helper closure that reports the failure to the
|
||||
|
||||
@@ -8,7 +8,6 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/btcsuite/btcd/btcec/v2"
|
||||
"github.com/lightningnetwork/lnd/channeldb"
|
||||
"github.com/lightningnetwork/lnd/fn/v2"
|
||||
"github.com/lightningnetwork/lnd/htlcswitch"
|
||||
"github.com/lightningnetwork/lnd/lnmock"
|
||||
@@ -303,7 +302,7 @@ func TestCheckTimeoutTimedOut(t *testing.T) {
|
||||
// Mock the control tower's `FailPayment` method.
|
||||
ct := &mockControlTower{}
|
||||
ct.On("FailPayment",
|
||||
p.identifier, channeldb.FailureReasonTimeout).Return(nil)
|
||||
p.identifier, paymentsdb.FailureReasonTimeout).Return(nil)
|
||||
|
||||
// Mount the mocked control tower.
|
||||
p.router.cfg.Control = ct
|
||||
@@ -324,7 +323,7 @@ func TestCheckTimeoutTimedOut(t *testing.T) {
|
||||
// Mock `FailPayment` to return a dummy error.
|
||||
ct = &mockControlTower{}
|
||||
ct.On("FailPayment",
|
||||
p.identifier, channeldb.FailureReasonTimeout).Return(errDummy)
|
||||
p.identifier, paymentsdb.FailureReasonTimeout).Return(errDummy)
|
||||
|
||||
// Mount the mocked control tower.
|
||||
p.router.cfg.Control = ct
|
||||
@@ -468,7 +467,7 @@ func TestRequestRouteHandleNoRouteErr(t *testing.T) {
|
||||
|
||||
// The payment should be failed with reason no route.
|
||||
m.control.On("FailPayment",
|
||||
p.identifier, channeldb.FailureReasonNoRoute,
|
||||
p.identifier, paymentsdb.FailureReasonNoRoute,
|
||||
).Return(nil).Once()
|
||||
|
||||
result, err := p.requestRoute(ps)
|
||||
@@ -838,7 +837,7 @@ func TestResumePaymentFailOnTimeout(t *testing.T) {
|
||||
|
||||
// 4. the payment should be failed with reason timeout.
|
||||
m.control.On("FailPayment",
|
||||
p.identifier, channeldb.FailureReasonTimeout,
|
||||
p.identifier, paymentsdb.FailureReasonTimeout,
|
||||
).Return(nil).Once()
|
||||
|
||||
// 5. decideNextStep now returns stepExit.
|
||||
@@ -849,7 +848,7 @@ func TestResumePaymentFailOnTimeout(t *testing.T) {
|
||||
m.control.On("DeleteFailedAttempts", p.identifier).Return(nil).Once()
|
||||
|
||||
// 7. the payment returns the failed reason.
|
||||
reason := channeldb.FailureReasonTimeout
|
||||
reason := paymentsdb.FailureReasonTimeout
|
||||
m.payment.On("TerminalInfo").Return(nil, &reason)
|
||||
|
||||
// Send the payment and assert it failed with the timeout reason.
|
||||
@@ -925,7 +924,7 @@ func TestResumePaymentFailContextCancel(t *testing.T) {
|
||||
cancel()
|
||||
|
||||
m.control.On(
|
||||
"FailPayment", p.identifier, channeldb.FailureReasonCanceled,
|
||||
"FailPayment", p.identifier, paymentsdb.FailureReasonCanceled,
|
||||
).Return(nil).Once()
|
||||
|
||||
// 4. decideNextStep now returns stepExit.
|
||||
@@ -936,7 +935,7 @@ func TestResumePaymentFailContextCancel(t *testing.T) {
|
||||
m.control.On("DeleteFailedAttempts", p.identifier).Return(nil).Once()
|
||||
|
||||
// 6. We will observe FailureReasonError if the context was cancelled.
|
||||
reason := channeldb.FailureReasonError
|
||||
reason := paymentsdb.FailureReasonError
|
||||
m.payment.On("TerminalInfo").Return(nil, &reason)
|
||||
|
||||
// Send the payment and assert it failed with the timeout reason.
|
||||
@@ -1162,7 +1161,7 @@ func TestResumePaymentFailOnSendAttemptErr(t *testing.T) {
|
||||
// which we'd fail the payment, cancel the shard and fail the attempt.
|
||||
//
|
||||
// `FailPayment` should be called with an internal reason.
|
||||
reason := channeldb.FailureReasonError
|
||||
reason := paymentsdb.FailureReasonError
|
||||
m.control.On("FailPayment", p.identifier, reason).Return(nil).Once()
|
||||
|
||||
// `CancelShard` should be called with the attemptID.
|
||||
@@ -1453,7 +1452,7 @@ func TestCollectResultExitOnErr(t *testing.T) {
|
||||
// which we'd fail the payment, cancel the shard and fail the attempt.
|
||||
//
|
||||
// `FailPayment` should be called with an internal reason.
|
||||
reason := channeldb.FailureReasonError
|
||||
reason := paymentsdb.FailureReasonError
|
||||
m.control.On("FailPayment", p.identifier, reason).Return(nil).Once()
|
||||
|
||||
// `CancelShard` should be called with the attemptID.
|
||||
@@ -1499,7 +1498,7 @@ func TestCollectResultExitOnResultErr(t *testing.T) {
|
||||
// which we'd fail the payment, cancel the shard and fail the attempt.
|
||||
//
|
||||
// `FailPayment` should be called with an internal reason.
|
||||
reason := channeldb.FailureReasonError
|
||||
reason := paymentsdb.FailureReasonError
|
||||
m.control.On("FailPayment", p.identifier, reason).Return(nil).Once()
|
||||
|
||||
// `CancelShard` should be called with the attemptID.
|
||||
|
||||
@@ -5,12 +5,12 @@ import (
|
||||
|
||||
"github.com/btcsuite/btcd/btcec/v2"
|
||||
"github.com/btcsuite/btclog/v2"
|
||||
"github.com/lightningnetwork/lnd/channeldb"
|
||||
graphdb "github.com/lightningnetwork/lnd/graph/db"
|
||||
"github.com/lightningnetwork/lnd/graph/db/models"
|
||||
"github.com/lightningnetwork/lnd/lnutils"
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
"github.com/lightningnetwork/lnd/netann"
|
||||
paymentsdb "github.com/lightningnetwork/lnd/payments/db"
|
||||
"github.com/lightningnetwork/lnd/routing/route"
|
||||
)
|
||||
|
||||
@@ -104,7 +104,7 @@ func (e noRouteError) Error() string {
|
||||
}
|
||||
|
||||
// FailureReason converts a path finding error into a payment-level failure.
|
||||
func (e noRouteError) FailureReason() channeldb.FailureReason {
|
||||
func (e noRouteError) FailureReason() paymentsdb.FailureReason {
|
||||
switch e {
|
||||
case
|
||||
errNoTlvPayload,
|
||||
@@ -114,13 +114,13 @@ func (e noRouteError) FailureReason() channeldb.FailureReason {
|
||||
errUnknownRequiredFeature,
|
||||
errMissingDependentFeature:
|
||||
|
||||
return channeldb.FailureReasonNoRoute
|
||||
return paymentsdb.FailureReasonNoRoute
|
||||
|
||||
case errInsufficientBalance:
|
||||
return channeldb.FailureReasonInsufficientBalance
|
||||
return paymentsdb.FailureReasonInsufficientBalance
|
||||
|
||||
default:
|
||||
return channeldb.FailureReasonError
|
||||
return paymentsdb.FailureReasonError
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,17 +5,17 @@ import (
|
||||
"fmt"
|
||||
"io"
|
||||
|
||||
"github.com/lightningnetwork/lnd/channeldb"
|
||||
"github.com/lightningnetwork/lnd/fn/v2"
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
paymentsdb "github.com/lightningnetwork/lnd/payments/db"
|
||||
"github.com/lightningnetwork/lnd/routing/route"
|
||||
"github.com/lightningnetwork/lnd/tlv"
|
||||
)
|
||||
|
||||
// Instantiate variables to allow taking a reference from the failure reason.
|
||||
var (
|
||||
reasonError = channeldb.FailureReasonError
|
||||
reasonIncorrectDetails = channeldb.FailureReasonPaymentDetails
|
||||
reasonError = paymentsdb.FailureReasonError
|
||||
reasonIncorrectDetails = paymentsdb.FailureReasonPaymentDetails
|
||||
)
|
||||
|
||||
// pairResult contains the result of the interpretation of a payment attempt for
|
||||
@@ -70,7 +70,7 @@ type interpretedResult struct {
|
||||
// finalFailureReason is set to a non-nil value if it makes no more
|
||||
// sense to start another payment attempt. It will contain the reason
|
||||
// why.
|
||||
finalFailureReason *channeldb.FailureReason
|
||||
finalFailureReason *paymentsdb.FailureReason
|
||||
|
||||
// policyFailure is set to a node pair if there is a policy failure on
|
||||
// that connection. This is used to control the second chance logic for
|
||||
|
||||
+3
-3
@@ -175,7 +175,7 @@ type MissionControlQuerier interface {
|
||||
// need to be made.
|
||||
ReportPaymentFail(attemptID uint64, rt *route.Route,
|
||||
failureSourceIdx *int, failure lnwire.FailureMessage) (
|
||||
*channeldb.FailureReason, error)
|
||||
*paymentsdb.FailureReason, error)
|
||||
|
||||
// ReportPaymentSuccess reports a successful payment to mission control
|
||||
// as input for future probability estimates.
|
||||
@@ -1068,7 +1068,7 @@ func (r *ChannelRouter) sendToRoute(htlcHash lntypes.Hash, rt *route.Route,
|
||||
// Helper function to fail a payment. It makes sure the payment is only
|
||||
// failed once so that the failure reason is not overwritten.
|
||||
failPayment := func(paymentIdentifier lntypes.Hash,
|
||||
reason channeldb.FailureReason) error {
|
||||
reason paymentsdb.FailureReason) error {
|
||||
|
||||
payment, fetchErr := r.cfg.Control.FetchPayment(
|
||||
paymentIdentifier,
|
||||
@@ -1191,7 +1191,7 @@ func (r *ChannelRouter) sendToRoute(htlcHash lntypes.Hash, rt *route.Route,
|
||||
// Since for SendToRoute we won't retry in case the shard fails, we'll
|
||||
// mark the payment failed with the control tower immediately if the
|
||||
// skipTempErr is false.
|
||||
reason := channeldb.FailureReasonError
|
||||
reason := paymentsdb.FailureReasonError
|
||||
|
||||
// If we failed to send the HTLC, we need to further decide if we want
|
||||
// to fail the payment.
|
||||
|
||||
@@ -21,7 +21,6 @@ import (
|
||||
"github.com/btcsuite/btcd/wire"
|
||||
"github.com/davecgh/go-spew/spew"
|
||||
sphinx "github.com/lightningnetwork/lightning-onion"
|
||||
"github.com/lightningnetwork/lnd/channeldb"
|
||||
"github.com/lightningnetwork/lnd/clock"
|
||||
"github.com/lightningnetwork/lnd/fn/v2"
|
||||
"github.com/lightningnetwork/lnd/graph"
|
||||
@@ -32,6 +31,7 @@ import (
|
||||
"github.com/lightningnetwork/lnd/lntypes"
|
||||
"github.com/lightningnetwork/lnd/lnwallet"
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
paymentsdb "github.com/lightningnetwork/lnd/payments/db"
|
||||
"github.com/lightningnetwork/lnd/record"
|
||||
"github.com/lightningnetwork/lnd/routing/route"
|
||||
"github.com/lightningnetwork/lnd/zpay32"
|
||||
@@ -1091,7 +1091,7 @@ func TestSendPaymentErrorPathPruning(t *testing.T) {
|
||||
|
||||
// The final error returned should also indicate that the peer wasn't
|
||||
// online (the last error we returned).
|
||||
require.Equal(t, channeldb.FailureReasonNoRoute, err)
|
||||
require.Equal(t, paymentsdb.FailureReasonNoRoute, err)
|
||||
|
||||
// Inspect the two attempts that were made before the payment failed.
|
||||
p, err := ctx.router.cfg.Control.FetchPayment(*payment.paymentHash)
|
||||
@@ -2429,7 +2429,7 @@ func TestSendToRouteSkipTempErrPermanentFailure(t *testing.T) {
|
||||
mock.Anything, mock.Anything, mock.Anything,
|
||||
).Return(permErr)
|
||||
|
||||
failureReason := channeldb.FailureReasonPaymentDetails
|
||||
failureReason := paymentsdb.FailureReasonPaymentDetails
|
||||
missionControl.On("ReportPaymentFail",
|
||||
mock.Anything, rt, mock.Anything, mock.Anything,
|
||||
).Return(&failureReason, nil)
|
||||
|
||||
Reference in new issue
Block a user