@@ -30,16 +30,16 @@ impl Writer for VecWriter {
3030#[ macro_export]
3131macro_rules! test_msg {
3232 ( $MsgType: path, $data: ident) => { {
33- use lightning:: util:: ser:: { Readable , Writeable } ;
34- let mut r = :: lightning :: io :: Cursor :: new ( $data) ;
35- if let Ok ( msg) = <$MsgType as Readable >:: read ( & mut r) {
36- let p = r . position ( ) as usize ;
33+ use lightning:: util:: ser:: { LengthReadable , Writeable } ;
34+ let mut r = & $data[ .. ] ;
35+ if let Ok ( msg) = <$MsgType as LengthReadable >:: read_from_fixed_length_buffer ( & mut r) {
36+ let p = $data . len ( ) - r . len ( ) as usize ;
3737 let mut w = VecWriter ( Vec :: new( ) ) ;
3838 msg. write( & mut w) . unwrap( ) ;
3939
4040 assert_eq!( w. 0 . len( ) , p) ;
4141 assert_eq!( msg. serialized_length( ) , p) ;
42- assert_eq!( & r . into_inner ( ) [ ..p] , & w. 0 [ ..p] ) ;
42+ assert_eq!( & $data [ ..p] , & w. 0 [ ..p] ) ;
4343 }
4444 } } ;
4545}
@@ -49,15 +49,16 @@ macro_rules! test_msg {
4949#[ macro_export]
5050macro_rules! test_msg_simple {
5151 ( $MsgType: path, $data: ident) => { {
52- use lightning:: util:: ser:: { Readable , Writeable } ;
53- let mut r = :: lightning:: io:: Cursor :: new( $data) ;
54- if let Ok ( msg) = <$MsgType as Readable >:: read( & mut r) {
52+ use lightning:: util:: ser:: { LengthReadable , Writeable } ;
53+ if let Ok ( msg) =
54+ <$MsgType as LengthReadable >:: read_from_fixed_length_buffer( & mut & $data[ ..] )
55+ {
5556 let mut w = VecWriter ( Vec :: new( ) ) ;
5657 msg. write( & mut w) . unwrap( ) ;
5758 assert_eq!( msg. serialized_length( ) , w. 0 . len( ) ) ;
5859
5960 let msg =
60- <$MsgType as Readable >:: read ( & mut :: lightning :: io :: Cursor :: new ( & w. 0 ) ) . unwrap( ) ;
61+ <$MsgType as LengthReadable >:: read_from_fixed_length_buffer ( & mut & w. 0 [ .. ] ) . unwrap( ) ;
6162 let mut w_two = VecWriter ( Vec :: new( ) ) ;
6263 msg. write( & mut w_two) . unwrap( ) ;
6364 assert_eq!( & w. 0 [ ..] , & w_two. 0 [ ..] ) ;
@@ -70,12 +71,13 @@ macro_rules! test_msg_simple {
7071#[ macro_export]
7172macro_rules! test_msg_exact {
7273 ( $MsgType: path, $data: ident) => { {
73- use lightning:: util:: ser:: { Readable , Writeable } ;
74- let mut r = :: lightning:: io:: Cursor :: new( $data) ;
75- if let Ok ( msg) = <$MsgType as Readable >:: read( & mut r) {
74+ use lightning:: util:: ser:: { LengthReadable , Writeable } ;
75+ if let Ok ( msg) =
76+ <$MsgType as LengthReadable >:: read_from_fixed_length_buffer( & mut & $data[ ..] )
77+ {
7678 let mut w = VecWriter ( Vec :: new( ) ) ;
7779 msg. write( & mut w) . unwrap( ) ;
78- assert_eq!( & r . into_inner ( ) [ ..] , & w. 0 [ ..] ) ;
80+ assert_eq!( & $data [ ..] , & w. 0 [ ..] ) ;
7981 assert_eq!( msg. serialized_length( ) , w. 0 . len( ) ) ;
8082 }
8183 } } ;
@@ -86,17 +88,18 @@ macro_rules! test_msg_exact {
8688#[ macro_export]
8789macro_rules! test_msg_hole {
8890 ( $MsgType: path, $data: ident, $hole: expr, $hole_len: expr) => { {
89- use lightning:: util:: ser:: { Readable , Writeable } ;
90- let mut r = :: lightning:: io:: Cursor :: new( $data) ;
91- if let Ok ( msg) = <$MsgType as Readable >:: read( & mut r) {
91+ use lightning:: util:: ser:: { LengthReadable , Writeable } ;
92+ if let Ok ( msg) =
93+ <$MsgType as LengthReadable >:: read_from_fixed_length_buffer( & mut & $data[ ..] )
94+ {
9295 let mut w = VecWriter ( Vec :: new( ) ) ;
9396 msg. write( & mut w) . unwrap( ) ;
9497 let p = w. 0 . len( ) as usize ;
9598 assert_eq!( msg. serialized_length( ) , p) ;
9699
97100 assert_eq!( w. 0 . len( ) , p) ;
98- assert_eq!( & r . get_ref ( ) [ ..$hole] , & w. 0 [ ..$hole] ) ;
99- assert_eq!( & r . get_ref ( ) [ $hole + $hole_len..p] , & w. 0 [ $hole + $hole_len..] ) ;
101+ assert_eq!( & $data [ ..$hole] , & w. 0 [ ..$hole] ) ;
102+ assert_eq!( & $data [ $hole + $hole_len..p] , & w. 0 [ $hole + $hole_len..] ) ;
100103 }
101104 } } ;
102105}
0 commit comments