lnd/autopilot/graph_test.go
Oli 8047149c6a
multi: upgrade to btcd v2 modules
Migrate all btcd dependencies to the new per-package v2 modules (wire/v2,
txscript/v2, chaincfg/v2, chainhash/v2, btcutil/v2, psbt/v2, btcec/v2)
introduced by btcd v0.26.0, and pin the tagged ecosystem versions:
btcwallet v0.17.0, neutrino v0.18.0 and lightning-onion v1.4.0.

The bulk of the import rewrite was produced by the scripted diff from
https://github.com/btcsuite/btcd/pull/2547 (followed by 'make rpc'). The
address symbols that moved out of btcutil into the new address package
are imported as btcaddr where a local "address" variable would otherwise
shadow them. The go.mod/go.sum updates and the remaining manual
compilation fixes are folded into this single commit so it builds on its
own (the migration was previously split into a reproducible scripted-diff
plus follow-ups, intended to be squashed on merge).
2026-06-24 10:58:36 -07:00

50 lines
849 B
Go

package autopilot_test
import (
"testing"
"github.com/btcsuite/btcd/btcutil/v2"
"github.com/lightningnetwork/lnd/autopilot"
)
// TestMedian tests the Median method.
func TestMedian(t *testing.T) {
t.Parallel()
testCases := []struct {
values []btcutil.Amount
median btcutil.Amount
}{
{
values: []btcutil.Amount{},
median: 0,
},
{
values: []btcutil.Amount{10},
median: 10,
},
{
values: []btcutil.Amount{10, 20},
median: 15,
},
{
values: []btcutil.Amount{10, 20, 30},
median: 20,
},
{
values: []btcutil.Amount{30, 10, 20},
median: 20,
},
{
values: []btcutil.Amount{10, 10, 10, 10, 5000000},
median: 10,
},
}
for _, test := range testCases {
res := autopilot.Median(test.values)
if res != test.median {
t.Fatalf("expected median %v, got %v", test.median, res)
}
}
}