routing: make test channel policies optional

This commit is contained in:
Wilmer Paulino 2019-04-18 13:02:08 -07:00
parent 5173ef6f85
commit 29664c9704
No known key found for this signature in database
GPG Key ID: 6DF57B9F9514972F

@ -307,13 +307,13 @@ type testChannelPolicy struct {
type testChannelEnd struct { type testChannelEnd struct {
Alias string Alias string
testChannelPolicy *testChannelPolicy
} }
func defaultTestChannelEnd(alias string, capacity btcutil.Amount) *testChannelEnd { func defaultTestChannelEnd(alias string, capacity btcutil.Amount) *testChannelEnd {
return &testChannelEnd{ return &testChannelEnd{
Alias: alias, Alias: alias,
testChannelPolicy: testChannelPolicy{ testChannelPolicy: &testChannelPolicy{
Expiry: 144, Expiry: 144,
MinHTLC: lnwire.MilliSatoshi(1000), MinHTLC: lnwire.MilliSatoshi(1000),
MaxHTLC: lnwire.NewMSatFromSatoshis(capacity), MaxHTLC: lnwire.NewMSatFromSatoshis(capacity),
@ -337,11 +337,11 @@ func symmetricTestChannel(alias1 string, alias2 string, capacity btcutil.Amount,
Capacity: capacity, Capacity: capacity,
Node1: &testChannelEnd{ Node1: &testChannelEnd{
Alias: alias1, Alias: alias1,
testChannelPolicy: *policy, testChannelPolicy: policy,
}, },
Node2: &testChannelEnd{ Node2: &testChannelEnd{
Alias: alias2, Alias: alias2,
testChannelPolicy: *policy, testChannelPolicy: policy,
}, },
ChannelID: id, ChannelID: id,
} }
@ -490,45 +490,48 @@ func createTestGraphFromChannels(testChannels []*testChannel) (*testGraphInstanc
return nil, err return nil, err
} }
var msgFlags lnwire.ChanUpdateMsgFlags if testChannel.Node1.testChannelPolicy != nil {
if testChannel.Node1.MaxHTLC != 0 { var msgFlags lnwire.ChanUpdateMsgFlags
msgFlags = 1 if testChannel.Node1.MaxHTLC != 0 {
} msgFlags = 1
edgePolicy := &channeldb.ChannelEdgePolicy{ }
SigBytes: testSig.Serialize(), edgePolicy := &channeldb.ChannelEdgePolicy{
MessageFlags: msgFlags, SigBytes: testSig.Serialize(),
ChannelFlags: 0, MessageFlags: msgFlags,
ChannelID: channelID, ChannelFlags: 0,
LastUpdate: testTime, ChannelID: channelID,
TimeLockDelta: testChannel.Node1.Expiry, LastUpdate: testTime,
MinHTLC: testChannel.Node1.MinHTLC, TimeLockDelta: testChannel.Node1.Expiry,
MaxHTLC: testChannel.Node1.MaxHTLC, MinHTLC: testChannel.Node1.MinHTLC,
FeeBaseMSat: testChannel.Node1.FeeBaseMsat, MaxHTLC: testChannel.Node1.MaxHTLC,
FeeProportionalMillionths: testChannel.Node1.FeeRate, FeeBaseMSat: testChannel.Node1.FeeBaseMsat,
} FeeProportionalMillionths: testChannel.Node1.FeeRate,
if err := graph.UpdateEdgePolicy(edgePolicy); err != nil { }
return nil, err if err := graph.UpdateEdgePolicy(edgePolicy); err != nil {
return nil, err
}
} }
msgFlags = 0 if testChannel.Node2.testChannelPolicy != nil {
if testChannel.Node2.MaxHTLC != 0 { var msgFlags lnwire.ChanUpdateMsgFlags
msgFlags = 1 if testChannel.Node2.MaxHTLC != 0 {
} msgFlags = 1
edgePolicy = &channeldb.ChannelEdgePolicy{ }
SigBytes: testSig.Serialize(), edgePolicy := &channeldb.ChannelEdgePolicy{
MessageFlags: msgFlags, SigBytes: testSig.Serialize(),
ChannelFlags: lnwire.ChanUpdateDirection, MessageFlags: msgFlags,
ChannelID: channelID, ChannelFlags: lnwire.ChanUpdateDirection,
LastUpdate: testTime, ChannelID: channelID,
TimeLockDelta: testChannel.Node2.Expiry, LastUpdate: testTime,
MinHTLC: testChannel.Node2.MinHTLC, TimeLockDelta: testChannel.Node2.Expiry,
MaxHTLC: testChannel.Node2.MaxHTLC, MinHTLC: testChannel.Node2.MinHTLC,
FeeBaseMSat: testChannel.Node2.FeeBaseMsat, MaxHTLC: testChannel.Node2.MaxHTLC,
FeeProportionalMillionths: testChannel.Node2.FeeRate, FeeBaseMSat: testChannel.Node2.FeeBaseMsat,
} FeeProportionalMillionths: testChannel.Node2.FeeRate,
}
if err := graph.UpdateEdgePolicy(edgePolicy); err != nil { if err := graph.UpdateEdgePolicy(edgePolicy); err != nil {
return nil, err return nil, err
}
} }
channelID++ channelID++