graph/db tests: make compareEdgePolicies assert internally
What changed, and why it matters
This commit is a minor internal cleanup of a test helper function in lnd's graph database tests. It changes how a comparison helper reports failures but does not alter production code, network behavior, or any security-relevant logic. There is no security issue here.
No action required. This is a benign test-only refactor.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit refactors compareEdgePolicies in graph/db/graph_test.go from a function returning an error to a test helper that accepts testing.TB and calls require.Equal directly. Call sites are updated to use the new signature. This is purely a test-code readability/maintainability change; it removes the unused reflect import and eliminates boilerplate require.NoError wrappers. No runtime or protocol behavior is affected.
Changed components
graph/db/graph_test.goInspect captured patch +19 / −32
diff --git a/graph/db/graph_test.go b/graph/db/graph_test.go
index 9dd5a6a..aa0e02b 100644
--- a/graph/db/graph_test.go
+++ b/graph/db/graph_test.go
@@ -11,7 +11,6 @@ import (
"math"
prand "math/rand"
"net"
- "reflect"
"sync"
"testing"
"time"
@@ -1196,8 +1195,8 @@ func testEdgeInfoUpdates(t *testing.T, v lnwire.GossipVersion) {
// been inserted properly.
dbEdgeInfo, dbEdge1, dbEdge2, err := graph.FetchChannelEdgesByID(chanID)
require.NoError(t, err, "unable to fetch channel by ID")
- require.NoError(t, compareEdgePolicies(dbEdge1, edge1))
- require.NoError(t, compareEdgePolicies(dbEdge2, edge2))
+ compareEdgePolicies(t, dbEdge1, edge1)
+ compareEdgePolicies(t, dbEdge2, edge2)
assertEdgeInfoEqual(t, dbEdgeInfo, edgeInfo)
// Next, attempt to query the channel edges according to the outpoint
@@ -1206,8 +1205,8 @@ func testEdgeInfoUpdates(t *testing.T, v lnwire.GossipVersion) {
&outpoint,
)
require.NoError(t, err, "unable to fetch channel by ID")
- require.NoError(t, compareEdgePolicies(dbEdge1, edge1))
- require.NoError(t, compareEdgePolicies(dbEdge2, edge2))
+ compareEdgePolicies(t, dbEdge1, edge1)
+ compareEdgePolicies(t, dbEdge2, edge2)
assertEdgeInfoEqual(t, dbEdgeInfo, edgeInfo)
}
@@ -1269,12 +1268,8 @@ func testEdgePolicyCRUD(t *testing.T, v lnwire.GossipVersion) {
policy1 *models.ChannelEdgePolicy,
policy2 *models.ChannelEdgePolicy) error {
- require.NoError(
- t, compareEdgePolicies(edge1, policy1),
- )
- require.NoError(
- t, compareEdgePolicies(edge2, policy2),
- )
+ compareEdgePolicies(t, edge1, policy1)
+ compareEdgePolicies(t, edge2, policy2)
return nil
}, func() {},
@@ -2521,15 +2516,12 @@ func TestChanUpdatesInHorizon(t *testing.T) {
assertEdgeInfoEqual(t, chanExp.Info, chanRet.Info)
- err = compareEdgePolicies(
- chanExp.Policy1, chanRet.Policy1,
+ compareEdgePolicies(
+ t, chanExp.Policy1, chanRet.Policy1,
)
- require.NoError(t, err)
-
- err = compareEdgePolicies(
- chanExp.Policy2, chanRet.Policy2,
+ compareEdgePolicies(
+ t, chanExp.Policy2, chanRet.Policy2,
)
- require.NoError(t, err)
}
}
}
@@ -3773,10 +3765,8 @@ func testFetchChanInfos(t *testing.T, v lnwire.GossipVersion) {
require.Len(t, resp, len(edges))
for i := 0; i < len(resp); i++ {
- err := compareEdgePolicies(resp[i].Policy1, edges[i].Policy1)
- require.NoError(t, err)
- err = compareEdgePolicies(resp[i].Policy2, edges[i].Policy2)
- require.NoError(t, err)
+ compareEdgePolicies(t, resp[i].Policy1, edges[i].Policy1)
+ compareEdgePolicies(t, resp[i].Policy2, edges[i].Policy2)
assertEdgeInfoEqual(t, resp[i].Info, edges[i].Info)
}
}
@@ -4482,7 +4472,7 @@ func TestEdgePolicyMissingMaxHTLC(t *testing.T) {
// The first edge should have a nil-policy returned
require.Nil(t, dbEdge1)
- require.NoError(t, compareEdgePolicies(dbEdge2, edge2))
+ compareEdgePolicies(t, dbEdge2, edge2)
assertEdgeInfoEqual(t, dbEdgeInfo, edgeInfo)
// Now add the original, unmodified edge policy, and make sure the edge
@@ -4491,8 +4481,8 @@ func TestEdgePolicyMissingMaxHTLC(t *testing.T) {
dbEdgeInfo, dbEdge1, dbEdge2, err = graph.FetchChannelEdgesByID(chanID)
require.NoError(t, err, "unable to fetch channel by ID")
- require.NoError(t, compareEdgePolicies(dbEdge1, edge1))
- require.NoError(t, compareEdgePolicies(dbEdge2, edge2))
+ compareEdgePolicies(t, dbEdge1, edge1)
+ compareEdgePolicies(t, dbEdge2, edge2)
assertEdgeInfoEqual(t, dbEdgeInfo, edgeInfo)
}
@@ -4624,7 +4614,9 @@ func compareNodes(t *testing.T, a, b *models.Node) {
// compareEdgePolicies compares two ChannelEdgePolicy values for semantic
// equality after normalizing version-specific/backend-specific differences.
-func compareEdgePolicies(a, b *models.ChannelEdgePolicy) error {
+func compareEdgePolicies(t testing.TB, a, b *models.ChannelEdgePolicy) {
+ t.Helper()
+
//nolint:ll
normalize := func(p *models.ChannelEdgePolicy) *models.ChannelEdgePolicy {
if p == nil {
@@ -4660,12 +4652,7 @@ func compareEdgePolicies(a, b *models.ChannelEdgePolicy) error {
normalizedA := normalize(a)
normalizedB := normalize(b)
- if !reflect.DeepEqual(normalizedA, normalizedB) {
- return fmt.Errorf("expected %v, got %v", normalizedA,
- normalizedB)
- }
-
- return nil
+ require.Equal(t, normalizedA, normalizedB)
}
// TestLightningNodeSigVerification checks that we can use the Node's
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.