use crate::error::Result; use crate::{Interceptor, InterceptorBuilder}; use std::sync::Arc; pub type MockBuilderResult = Result>; /// MockBuilder is a mock Builder for testing. pub struct MockBuilder { pub build: Box MockBuilderResult) + Send + Sync + 'static>, } impl MockBuilder { pub fn new MockBuilderResult) + Send + Sync + 'static>(f: F) -> Self { MockBuilder { build: Box::new(f) } } } impl InterceptorBuilder for MockBuilder { fn build(&self, id: &str) -> MockBuilderResult { (self.build)(id) } }