@@ -49,6 +49,53 @@ def test_gossmap(tmp_path):
49
49
assert channel2 .satoshis == 3000000
50
50
51
51
52
+ def test_gossmap_halfchannel (tmp_path ):
53
+ """ this test a simple [l1->l2] gossip store that was created by the pyln-testing framework """
54
+ sfile = unxz_data_tmp ("gossip_store.simple.xz" , tmp_path , "gossip_store" , "xb" )
55
+ g = Gossmap (sfile )
56
+
57
+ l1id = "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59"
58
+ l2id = "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518"
59
+
60
+ # check structure parsed correctly
61
+ assert (len (g .nodes ) == 2 )
62
+ n1 = g .get_node (l1id )
63
+ n2 = g .get_node (l2id )
64
+ assert n1
65
+ assert n2
66
+
67
+ chan = g .get_channel ("103x1x1" )
68
+ assert chan
69
+ assert chan .node1 == n1
70
+ assert chan .node2 == n2
71
+
72
+ half0 = chan .get_direction (0 )
73
+ half1 = chan .get_direction (1 )
74
+ assert half0
75
+ assert half1
76
+ assert half0 .direction == 0
77
+ assert half1 .direction == 1
78
+ assert half0 .channel == chan
79
+ assert half1 .channel == chan
80
+ assert half0 .source == n1
81
+ assert half0 .destination == n2
82
+ assert half1 .source == n2
83
+ assert half1 .destination == n1
84
+
85
+ # check metadata
86
+ assert half0 .timestamp == 1631005020
87
+ assert half1 .timestamp == 1631005020
88
+ assert half0 .cltv_expiry_delta == 6
89
+ assert half1 .cltv_expiry_delta == 6
90
+ assert half0 .htlc_minimum_msat == 0
91
+ assert half1 .htlc_minimum_msat == 0
92
+ assert half0 .htlc_maximum_msat == 990000000
93
+ assert half1 .htlc_maximum_msat == 990000000
94
+ assert half0 .fee_base_msat == 1
95
+ assert half1 .fee_base_msat == 1
96
+ assert half0 .fee_proportional_millionths == 10
97
+
98
+
52
99
def test_objects ():
53
100
boltz = "026165850492521f4ac8abd9bd8088123446d126f648ca35e60f88177dc149ceb2"
54
101
acinq = "03864ef025fde8fb587d989186ce6a4a186895ee44a926bfc370e2c366597a3f8f"
0 commit comments