From 61513023aff4d3312287bb0fb55ea931997dfddb Mon Sep 17 00:00:00 2001 From: iximeow Date: Tue, 6 Jul 2021 16:42:24 -0700 Subject: update yaxpeax_arch and bump version to 0.1.0 --- test/armv7/thumb.rs | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) (limited to 'test/armv7/thumb.rs') diff --git a/test/armv7/thumb.rs b/test/armv7/thumb.rs index b603925..4c5c4a1 100644 --- a/test/armv7/thumb.rs +++ b/test/armv7/thumb.rs @@ -5,7 +5,8 @@ type InstDecoder = ::Decoder; #[allow(dead_code)] fn test_invalid_under(decoder: &InstDecoder, data: &[u8]) { - match decoder.decode(data.to_vec()) { + let mut reader = yaxpeax_arch::U8Reader::new(&data[..]); + match decoder.decode(&mut reader) { Err(_) => { }, Ok(inst) => { panic!( @@ -19,7 +20,13 @@ fn test_invalid_under(decoder: &InstDecoder, data: &[u8]) { #[allow(dead_code)] fn test_display_under(decoder: &InstDecoder, data: [u8; 4], expected: &'static str) { - let instr = decoder.decode(data.to_vec()).unwrap_or_else(|_| panic!("failed to decode {:#x?}", data)); + let mut reader = yaxpeax_arch::U8Reader::new(&data[..]); + let instr = match decoder.decode(&mut reader) { + Err(e) => { + panic!("failed to decode {:#x?}: {}", data, e) + } + Ok(instr) => instr, + }; let displayed = format!("{}", instr); assert!( displayed == expected, @@ -31,7 +38,13 @@ fn test_display_under(decoder: &InstDecoder, data: [u8; 4], expected: &'static s #[allow(dead_code)] fn test_decode(data: &[u8], expected: Instruction) { - let instr = InstDecoder::default_thumb().decode(data.to_vec()).unwrap(); + let mut reader = yaxpeax_arch::U8Reader::new(data); + let instr = match InstDecoder::default_thumb().decode(&mut reader) { + Err(e) => { + panic!("failed to decode {:#x?}: {}", data, e) + } + Ok(instr) => instr, + }; assert!( instr == expected, "decode error for {:#x?}:\n decoded: {:?}\n expected: {:?}\n", @@ -42,11 +55,17 @@ fn test_decode(data: &[u8], expected: Instruction) { #[allow(dead_code)] fn test_invalid(data: &[u8]) { - test_invalid_under(&InstDecoder::default(), data); + test_invalid_under(&InstDecoder::default_thumb(), data); } fn test_display(data: &[u8], expected: &'static str) { - let instr = InstDecoder::default_thumb().decode(data.to_vec()).unwrap(); + let mut reader = yaxpeax_arch::U8Reader::new(data); + let instr = match InstDecoder::default_thumb().decode(&mut reader) { + Err(e) => { + panic!("failed to decode {:#x?}: {}", data, e) + } + Ok(instr) => instr, + }; let text = format!("{}", instr); assert!( text == expected, -- cgit v1.1