feat: add BuildCodeGraph use case, sink orchestration out of presentation
This commit is contained in:
@@ -3,9 +3,11 @@
|
||||
mod diagram_renderer;
|
||||
mod file_discovery;
|
||||
mod output_writer;
|
||||
mod project_analyzer;
|
||||
mod source_analyzer;
|
||||
|
||||
pub use diagram_renderer::FakeDiagramRenderer;
|
||||
pub use file_discovery::FakeFileDiscovery;
|
||||
pub use output_writer::FakeOutputWriter;
|
||||
pub use project_analyzer::FakeProjectAnalyzer;
|
||||
pub use source_analyzer::FakeSourceAnalyzer;
|
||||
|
||||
23
crates/application/tests/fakes/project_analyzer.rs
Normal file
23
crates/application/tests/fakes/project_analyzer.rs
Normal file
@@ -0,0 +1,23 @@
|
||||
use std::path::Path;
|
||||
|
||||
use archlens_domain::{CodeGraph, DomainError, ports::ProjectAnalyzer};
|
||||
|
||||
pub struct FakeProjectAnalyzer {
|
||||
graph: CodeGraph,
|
||||
}
|
||||
|
||||
impl FakeProjectAnalyzer {
|
||||
pub fn new(graph: CodeGraph) -> Self {
|
||||
Self { graph }
|
||||
}
|
||||
|
||||
pub fn empty() -> Self {
|
||||
Self { graph: CodeGraph::new() }
|
||||
}
|
||||
}
|
||||
|
||||
impl ProjectAnalyzer for FakeProjectAnalyzer {
|
||||
fn analyze(&self, _root: &Path) -> Result<CodeGraph, DomainError> {
|
||||
Ok(self.graph.clone())
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user