Skip to content

Commit 25fffeb

Browse files
committed
Test Trampoline onion (de)serialization round trip.
1 parent 9ee20b9 commit 25fffeb

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

lightning/src/ln/msgs.rs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3209,7 +3209,7 @@ mod tests {
32093209
use crate::ln::msgs::{self, FinalOnionHopData, OnionErrorPacket, CommonOpenChannelFields, CommonAcceptChannelFields, TrampolineOnionPacket};
32103210
use crate::ln::msgs::SocketAddress;
32113211
use crate::routing::gossip::{NodeAlias, NodeId};
3212-
use crate::util::ser::{BigSize, Hostname, Readable, ReadableArgs, TransactionU16LenLimited, Writeable};
3212+
use crate::util::ser::{BigSize, FixedLengthReader, Hostname, LengthReadable, Readable, ReadableArgs, TransactionU16LenLimited, Writeable};
32133213
use crate::util::test_utils;
32143214

32153215
use bitcoin::hashes::hex::FromHex;
@@ -4525,6 +4525,13 @@ mod tests {
45254525
let encoded_trampoline_packet = trampoline_packet.encode();
45264526
assert_eq!(encoded_trampoline_packet.len(), 716);
45274527

4528+
{ // verify that a codec round trip works
4529+
let mut reader = Cursor::new(&encoded_trampoline_packet);
4530+
let mut trampoline_packet_reader = FixedLengthReader::new(&mut reader, encoded_trampoline_packet.len() as u64);
4531+
let decoded_trampoline_packet: TrampolineOnionPacket = <TrampolineOnionPacket as LengthReadable>::read(&mut trampoline_packet_reader).unwrap();
4532+
assert_eq!(decoded_trampoline_packet.encode(), encoded_trampoline_packet);
4533+
}
4534+
45284535
let msg = msgs::OutboundOnionPayload::TrampolineEntrypoint {
45294536
multipath_trampoline_data: None,
45304537
amt_to_forward: 0x0badf00d01020304,

0 commit comments

Comments
 (0)