From be290604bf01e6667ea77aee393c238c2976e62e Mon Sep 17 00:00:00 2001 From: George Wu Date: Sat, 21 Feb 2026 18:01:08 -0800 Subject: [PATCH] feat(search): add missing trait methods for mock repositories - Add search_files_paginated and count_files to MockFileRepository in share_service.rs - Add search_files_paginated and count_files to MockFileRepository in trash_service_test.rs These methods were added to the FileReadPort trait to support database-level pagination for search optimization. --- src/application/services/share_service.rs | 18 ++++++++++++++++++ src/application/services/trash_service_test.rs | 18 ++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/src/application/services/share_service.rs b/src/application/services/share_service.rs index d320ccb8..99b7697c 100644 --- a/src/application/services/share_service.rs +++ b/src/application/services/share_service.rs @@ -483,6 +483,24 @@ mod tests { async fn get_blob_hash(&self, _file_id: &str) -> Result { Ok(String::new()) } + + async fn search_files_paginated( + &self, + _folder_id: Option<&str>, + _criteria: &crate::application::dtos::search_dto::SearchCriteriaDto, + _user_id: &str, + ) -> Result<(Vec, usize), DomainError> { + Ok((Vec::new(), 0)) + } + + async fn count_files( + &self, + _folder_id: Option<&str>, + _criteria: &crate::application::dtos::search_dto::SearchCriteriaDto, + _user_id: &str, + ) -> Result { + Ok(0) + } } #[async_trait] diff --git a/src/application/services/trash_service_test.rs b/src/application/services/trash_service_test.rs index 0bd86e4b..49408d83 100644 --- a/src/application/services/trash_service_test.rs +++ b/src/application/services/trash_service_test.rs @@ -183,6 +183,24 @@ impl FileReadPort for MockFileRepository { async fn get_blob_hash(&self, _file_id: &str) -> std::result::Result { Ok(String::new()) } + + async fn search_files_paginated( + &self, + _folder_id: Option<&str>, + _criteria: &crate::application::dtos::search_dto::SearchCriteriaDto, + _user_id: &str, + ) -> std::result::Result<(Vec, usize), DomainError> { + Ok((Vec::new(), 0)) + } + + async fn count_files( + &self, + _folder_id: Option<&str>, + _criteria: &crate::application::dtos::search_dto::SearchCriteriaDto, + _user_id: &str, + ) -> std::result::Result { + Ok(0) + } } #[async_trait]