@@ -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}
@@ -87,17 +87,16 @@ macro_rules! test_msg_exact {
8787#[ macro_export]
8888macro_rules! test_msg_hole {
8989 ( $MsgType: path, $data: ident, $hole: expr, $hole_len: expr) => { {
90- use lightning:: util:: ser:: { Readable , Writeable } ;
91- let mut r = :: lightning:: io:: Cursor :: new( $data) ;
92- if let Ok ( msg) = <$MsgType as Readable >:: read( & mut r) {
90+ use lightning:: util:: ser:: { LengthReadable , Writeable } ;
91+ if let Ok ( msg) = <$MsgType as LengthReadable >:: read_from_fixed_length_buffer( & mut & $data[ ..] ) {
9392 let mut w = VecWriter ( Vec :: new( ) ) ;
9493 msg. write( & mut w) . unwrap( ) ;
9594 let p = w. 0 . len( ) as usize ;
9695 assert_eq!( msg. serialized_length( ) , p) ;
9796
9897 assert_eq!( w. 0 . len( ) , p) ;
99- assert_eq!( & r . get_ref ( ) [ ..$hole] , & w. 0 [ ..$hole] ) ;
100- assert_eq!( & r . get_ref ( ) [ $hole + $hole_len..p] , & w. 0 [ $hole + $hole_len..] ) ;
98+ assert_eq!( & $data [ ..$hole] , & w. 0 [ ..$hole] ) ;
99+ assert_eq!( & $data [ $hole + $hole_len..p] , & w. 0 [ $hole + $hole_len..] ) ;
101100 }
102101 } } ;
103102}
0 commit comments