From 0bcea6031e3d0b48acb15f6a7dfdab670ec8fcfc Mon Sep 17 00:00:00 2001 From: iximeow Date: Sun, 2 Jan 2022 13:27:48 -0800 Subject: get test situation in order --- tests/test.rs | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 tests/test.rs (limited to 'tests/test.rs') diff --git a/tests/test.rs b/tests/test.rs new file mode 100644 index 0000000..67893db --- /dev/null +++ b/tests/test.rs @@ -0,0 +1,49 @@ +// #![feature(test)] +// +// extern crate test; + +mod armv7; +mod armv8; + +use yaxpeax_arch::{Arch, Decoder, U8Reader}; + +#[test] +fn test_armv7_does_not_panic() { + let armv7 = ::Decoder::default(); + + for i in 0..=u32::MAX { + let bytes = i.to_le_bytes(); + let res = armv7.decode(&mut U8Reader::new(&bytes)); + if let Ok(instr) = res { + let s = instr.to_string(); + drop(s); + } + } +} +#[test] +fn test_armv7_thumb_does_not_panic() { + let mut armv7_t = ::Decoder::default(); + armv7_t.set_thumb_mode(true); + + for i in 0..=u32::MAX { + let bytes = i.to_le_bytes(); + let res = armv7_t.decode(&mut U8Reader::new(&bytes)); + if let Ok(instr) = res { + let s = instr.to_string(); + drop(s); + } + } +} +#[test] +fn test_armv8_does_not_panic() { + let armv8 = ::Decoder::default(); + + for i in 0..=u32::MAX { + let bytes = i.to_le_bytes(); + let res = armv8.decode(&mut U8Reader::new(&bytes)); + if let Ok(instr) = res { + let s = instr.to_string(); + drop(s); + } + } +} -- cgit v1.1