From fe3ed7630079c1166bb4529100ffa7c4ae97a130 Mon Sep 17 00:00:00 2001 From: Rubens Brandao Date: Thu, 20 Jun 2024 09:15:03 -0300 Subject: Implement Rust Repository --- rust/tests/repository.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 rust/tests/repository.rs (limited to 'rust/tests') diff --git a/rust/tests/repository.rs b/rust/tests/repository.rs new file mode 100644 index 00000000..6047bcae --- /dev/null +++ b/rust/tests/repository.rs @@ -0,0 +1,30 @@ +use binaryninja::headless::Session; +use binaryninja::repository::RepositoryManager; +use rstest::*; + +#[fixture] +fn session() -> Session { + Session::new().expect("Failed to initialize session") +} + +#[rstest] +fn test_list(_session: Session) { + let manager = RepositoryManager::default(); + let repositories = manager.repositories(); + for repository in &repositories { + let repo_path = repository.path(); + let repository_by_path = manager.repository_by_path(repo_path).unwrap(); + assert_eq!(repository.url(), repository_by_path.url()); + } + + let repository = manager.default_repository(); + let _full_path = repository.full_path(); + let _path = repository.path(); + let _url = repository.url(); + let plugins = repository.plugins(); + for plugin in &plugins { + let plugin_path = plugin.path(); + let plugin_by_path = repository.plugin_by_path(plugin_path).unwrap(); + assert_eq!(plugin.package_url(), plugin_by_path.package_url()); + } +} -- cgit v1.3.1