pub struct Config {
pub latency_enabled: bool,
pub failures_enabled: bool,
pub overrides_enabled: bool,
pub traffic_shaping_enabled: bool,
pub failure_config: Option<FailureConfig>,
pub proxy: Option<ProxyConfig>,
pub default_latency: LatencyProfile,
pub traffic_shaping: TrafficShapingConfig,
pub chaos_random: Option<ChaosConfig>,
pub max_request_logs: usize,
pub time_travel: TimeTravelConfig,
}Expand description
Core configuration for MockForge
Fields§
§latency_enabled: boolEnable latency simulation
failures_enabled: boolEnable failure simulation
overrides_enabled: boolEnable response overrides
traffic_shaping_enabled: boolEnable traffic shaping (bandwidth + burst loss)
failure_config: Option<FailureConfig>Failure injection configuration
proxy: Option<ProxyConfig>Proxy configuration
default_latency: LatencyProfileDefault latency profile
traffic_shaping: TrafficShapingConfigTraffic shaping configuration
chaos_random: Option<ChaosConfig>Random chaos configuration
max_request_logs: usizeMaximum number of request logs to keep in memory (default: 1000) Helps prevent unbounded memory growth from request logging
time_travel: TimeTravelConfigTime travel configuration for temporal testing
Implementations§
Source§impl Config
impl Config
Sourcepub fn create_chaos_engine(&self) -> Option<ChaosEngine>
pub fn create_chaos_engine(&self) -> Option<ChaosEngine>
Create a ChaosEngine from the chaos_random configuration if enabled
Sourcepub fn is_chaos_random_enabled(&self) -> bool
pub fn is_chaos_random_enabled(&self) -> bool
Check if random chaos mode is enabled
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more