Skip to content

Commit 325d93b

Browse files
committed
Test Trampoline onion (de)serialization round trip.
1 parent dd8cbf9 commit 325d93b

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

lightning/src/ln/msgs.rs

+8-1
Original file line numberDiff line numberDiff line change
@@ -3200,7 +3200,7 @@ mod tests {
32003200
use crate::ln::msgs::{self, FinalOnionHopData, OnionErrorPacket, CommonOpenChannelFields, CommonAcceptChannelFields, TrampolineOnionPacket};
32013201
use crate::ln::msgs::SocketAddress;
32023202
use crate::routing::gossip::{NodeAlias, NodeId};
3203-
use crate::util::ser::{BigSize, Hostname, Readable, ReadableArgs, TransactionU16LenLimited, Writeable};
3203+
use crate::util::ser::{BigSize, FixedLengthReader, Hostname, LengthReadable, Readable, ReadableArgs, TransactionU16LenLimited, Writeable};
32043204
use crate::util::test_utils;
32053205

32063206
use bitcoin::hashes::hex::FromHex;
@@ -4516,6 +4516,13 @@ mod tests {
45164516
let encoded_trampoline_packet = trampoline_packet.encode();
45174517
assert_eq!(encoded_trampoline_packet.len(), 716);
45184518

4519+
{ // verify that a codec round trip works
4520+
let mut reader = Cursor::new(&encoded_trampoline_packet);
4521+
let mut trampoline_packet_reader = FixedLengthReader::new(&mut reader, encoded_trampoline_packet.len() as u64);
4522+
let decoded_trampoline_packet: TrampolineOnionPacket = <TrampolineOnionPacket as LengthReadable>::read(&mut trampoline_packet_reader).unwrap();
4523+
assert_eq!(decoded_trampoline_packet.encode(), encoded_trampoline_packet);
4524+
}
4525+
45194526
let msg = msgs::OutboundOnionPayload::TrampolineEntrypoint {
45204527
multipath_trampoline_data: None,
45214528
amt_to_forward: 0x0badf00d01020304,

0 commit comments

Comments
 (0)