From 27b33c13ba8cc7c4980abde2cf4a4331396376df Mon Sep 17 00:00:00 2001 From: jakka Date: Fri, 17 Oct 2025 17:08:43 +0300 Subject: various fixes reorganized project structure so client tests are not in the libraries changed some types on functions for better use --- src/async_lib.rs | 30 ------------------------------ src/async_lib/client.rs | 4 ++-- src/sync_lib/client.rs | 4 ++-- src/types.rs | 8 ++++++-- 4 files changed, 10 insertions(+), 36 deletions(-) (limited to 'src') diff --git a/src/async_lib.rs b/src/async_lib.rs index 55f23c2..cc0e113 100644 --- a/src/async_lib.rs +++ b/src/async_lib.rs @@ -33,33 +33,3 @@ impl From for HydrusError { HydrusError::NetworkError(value) } } - -#[cfg(test)] -mod tests { - use crate::async_lib::{client::*, traits::*}; - - #[tokio::test] - async fn test_service_name_info() { - let mut client: HydrusClient = HydrusClient::new("http://127.0.0.1:51251/"); - client.set_api_key("7ab7accf6cf12b2c6c30436cd8fe16361aee33679dbd90da279b5c22b33d622a"); - let _ = client.get_service_name("all my files").await.unwrap(); - } - - #[tokio::test] - async fn test_service_key_info() { - let mut client: HydrusClient = HydrusClient::new("http://127.0.0.1:51251/"); - client.set_api_key("7ab7accf6cf12b2c6c30436cd8fe16361aee33679dbd90da279b5c22b33d622a"); - let _ = client - .get_service_key("616c6c206c6f63616c206d65646961") - .await - .unwrap(); - } - - #[tokio::test] - async fn test_get_services() { - let mut client: HydrusClient = HydrusClient::new("http://127.0.0.1:51251/"); - client.set_api_key("7ab7accf6cf12b2c6c30436cd8fe16361aee33679dbd90da279b5c22b33d622a"); - let res = client.get_services().await.unwrap(); - assert!(!res.is_empty()) - } -} diff --git a/src/async_lib/client.rs b/src/async_lib/client.rs index 784f269..7ac5112 100644 --- a/src/async_lib/client.rs +++ b/src/async_lib/client.rs @@ -34,11 +34,11 @@ impl HydrusClient { } } /// set an api key - pub fn set_api_key(&mut self, key: &str) { + pub fn set_api_key(&mut self, key: String) { self.apikey = Some(key.to_owned()) } /// set a session key - pub fn set_session_key(&mut self, key: &str) { + pub fn set_session_key(&mut self, key: String) { self.sessionkey = Some(key.to_owned()) } diff --git a/src/sync_lib/client.rs b/src/sync_lib/client.rs index a5ff726..3948e44 100644 --- a/src/sync_lib/client.rs +++ b/src/sync_lib/client.rs @@ -35,11 +35,11 @@ impl HydrusClient { } } /// set an api key - pub fn set_api_key(&mut self, key: &str) { + pub fn set_api_key(&mut self, key: String) { self.apikey = Some(key.to_owned()) } /// set a session key - pub fn set_session_key(&mut self, key: &str) { + pub fn set_session_key(&mut self, key: String) { self.sessionkey = Some(key.to_owned()) } diff --git a/src/types.rs b/src/types.rs index e10a48e..ddc238b 100644 --- a/src/types.rs +++ b/src/types.rs @@ -85,7 +85,7 @@ pub enum FileDomain { /// Payload for importing a file via providing a local path #[derive(Serialize, Debug, Default)] -pub struct AddFileRequest { +pub(crate) struct AddFileRequest { pub path: PathBuf, #[serde(skip_serializing_if = "Option::is_none")] pub delete_after_successful_import: Option, @@ -137,7 +137,7 @@ impl Default for HydrusFile { /// Payload for various file-related requests #[derive(Debug, Default)] -pub struct FileRequest { +pub(crate) struct FileRequest { pub file: HydrusFile, pub delete_after_successful_import: Option, pub file_service_key: Option, @@ -166,6 +166,10 @@ impl Serialize for FileRequest { map.serialize_entry("reason", &val)?; } + if let Some(val) = &self.delete_after_successful_import { + map.serialize_entry("delete_after_successful_import", val)?; + } + if let Some(val) = &self.file_service_key { map.serialize_entry("file_service_key", &val)?; } -- cgit v1.3.1