mockforge_recorder/
lib.rs1pub mod api;
7pub mod database;
8pub mod diff;
9pub mod har_export;
10pub mod integration_testing;
11pub mod middleware;
12pub mod models;
13pub mod protocols;
14pub mod query;
15pub mod recorder;
16pub mod replay;
17pub mod scrubbing;
18pub mod sync;
19pub mod test_generation;
20
21pub use api::create_api_router;
22pub use database::RecorderDatabase;
23pub use diff::{ComparisonResult, Difference, DifferenceType, ResponseComparator};
24pub use har_export::export_to_har;
25pub use integration_testing::{
26 IntegrationTestGenerator, IntegrationWorkflow, StepCondition, StepRequest, StepValidation,
27 VariableExtraction, WorkflowSetup, WorkflowStep,
28};
29pub use middleware::recording_middleware;
30pub use models::{Protocol, RecordedRequest, RecordedResponse};
31pub use query::{QueryFilter, QueryResult};
32pub use recorder::Recorder;
33pub use replay::ReplayEngine;
34pub use scrubbing::{
35 CaptureFilter, CaptureFilterConfig, ScrubConfig, ScrubRule, ScrubTarget, Scrubber,
36};
37pub use sync::{SyncConfig, SyncService, SyncStatus};
38pub use test_generation::{
39 GeneratedTest, LlmConfig, TestFormat, TestGenerationConfig, TestGenerationResult,
40 TestGenerator, TestSuiteMetadata,
41};
42
43use thiserror::Error;
44
45#[derive(Error, Debug)]
47pub enum RecorderError {
48 #[error("Database error: {0}")]
49 Database(#[from] sqlx::Error),
50
51 #[error("Serialization error: {0}")]
52 Serialization(#[from] serde_json::Error),
53
54 #[error("IO error: {0}")]
55 Io(#[from] std::io::Error),
56
57 #[error("Request not found: {0}")]
58 NotFound(String),
59
60 #[error("Invalid filter: {0}")]
61 InvalidFilter(String),
62
63 #[error("Replay error: {0}")]
64 Replay(String),
65
66 #[error("Test generation error: {0}")]
67 TestGeneration(String),
68}
69
70pub type Result<T> = std::result::Result<T, RecorderError>;