mirror of
https://github.com/aljazceru/breez-lnd.git
synced 2025-12-17 22:24:21 +01:00
The switch satisfies this interface, and makes it easy to mock the send method from the router.
32 lines
718 B
Go
32 lines
718 B
Go
package routing
|
|
|
|
import (
|
|
"crypto/sha256"
|
|
|
|
"github.com/lightningnetwork/lnd/htlcswitch"
|
|
"github.com/lightningnetwork/lnd/lnwire"
|
|
)
|
|
|
|
type mockPaymentAttemptDispatcher struct {
|
|
onPayment func(firstHop lnwire.ShortChannelID) ([32]byte, error)
|
|
}
|
|
|
|
var _ PaymentAttemptDispatcher = (*mockPaymentAttemptDispatcher)(nil)
|
|
|
|
func (m *mockPaymentAttemptDispatcher) SendHTLC(firstHop lnwire.ShortChannelID,
|
|
_ *lnwire.UpdateAddHTLC,
|
|
_ htlcswitch.ErrorDecrypter) ([sha256.Size]byte, error) {
|
|
|
|
if m.onPayment != nil {
|
|
return m.onPayment(firstHop)
|
|
}
|
|
|
|
return [sha256.Size]byte{}, nil
|
|
}
|
|
|
|
func (m *mockPaymentAttemptDispatcher) setPaymentResult(
|
|
f func(firstHop lnwire.ShortChannelID) ([32]byte, error)) {
|
|
|
|
m.onPayment = f
|
|
}
|