structural refactor and codebase improvements

This commit is contained in:
2026-08-09 14:58:14 +02:00
parent 22b1dd3f56
commit c9715baab8
247 changed files with 11515 additions and 3063 deletions

View File

@@ -0,0 +1,7 @@
use std::sync::Arc;
use domain::ports::SearchPort;
pub struct SearchDeps {
pub search_port: Arc<dyn SearchPort>,
}

View File

@@ -1,15 +1,12 @@
use domain::{
errors::DomainError,
models::{SearchQuery, SearchResults},
ports::SearchPort,
};
use std::sync::Arc;
pub async fn execute(
search_port: Arc<dyn SearchPort>,
query: SearchQuery,
) -> Result<SearchResults, DomainError> {
search_port.search(&query).await
use crate::search::deps::SearchDeps;
pub async fn execute(deps: &SearchDeps, query: SearchQuery) -> Result<SearchResults, DomainError> {
deps.search_port.search(&query).await
}
#[cfg(test)]

View File

@@ -1 +1,2 @@
pub mod deps;
pub mod execute;

View File

@@ -1,13 +1,17 @@
use domain::models::SearchQuery;
use crate::search::deps::SearchDeps;
use crate::search::execute;
use crate::test_helpers::TestContextBuilder;
#[tokio::test]
async fn returns_empty_results() {
let b = TestContextBuilder::new();
let deps = SearchDeps {
search_port: b.search_port.clone(),
};
let result = execute::execute(b.search_port.clone(), SearchQuery::default())
let result = execute::execute(&deps, SearchQuery::default())
.await
.unwrap();