diff options
| author | Mason Reed <mason@vector35.com> | 2025-02-06 11:19:44 -0500 |
|---|---|---|
| committer | Mason Reed <mason@vector35.com> | 2025-02-06 21:41:40 -0500 |
| commit | c8fbd0f11d7a83e72f76f8cef254152807e34d13 (patch) | |
| tree | 81df56a55327568907577ac2003b0acfe023a782 | |
| parent | 63bda3b9dde7c85c1140f9fa96da49f23d4936c5 (diff) | |
Add simple type to view test for Rust API
| -rw-r--r-- | rust/tests/types.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/rust/tests/types.rs b/rust/tests/types.rs index 98530dc6..bb748e49 100644 --- a/rust/tests/types.rs +++ b/rust/tests/types.rs @@ -1,6 +1,9 @@ +use binaryninja::binary_view::{BinaryView, BinaryViewExt}; use binaryninja::confidence::Conf; +use binaryninja::file_metadata::FileMetadata; use binaryninja::headless::Session; use binaryninja::platform::Platform; +use binaryninja::rc::Ref; use binaryninja::types::{MemberAccess, MemberScope, StructureBuilder, StructureMember, Type}; use rstest::*; @@ -10,6 +13,12 @@ fn session() -> Session { Session::new().expect("Failed to initialize session") } +#[fixture] +#[once] +fn empty_view() -> Ref<BinaryView> { + BinaryView::from_data(&FileMetadata::new(), &[]).expect("Failed to create view") +} + #[rstest] fn test_type_to_string(_session: &Session) { let test_type = Type::int(4, true); @@ -58,3 +67,11 @@ fn test_structure_builder(_session: &Session) { } ); } + +#[rstest] +fn add_type_to_view(_session: &Session, empty_view: &BinaryView) { + let test_type = Type::int(4, true); + empty_view.define_auto_type("test", "me", &test_type); + assert!(empty_view.type_by_name("test").is_some()); + assert!(empty_view.type_by_id("me").is_some()); +} |
