Crate magneto_serge

Crate magneto_serge 

Source
Expand description

§magneto-serge

Multi-language HTTP/WebSocket proxy library for testing with record/replay capabilities.

This library provides a MITM proxy that intercepts HTTP/HTTPS and WebSocket traffic, records interactions into “cassettes”, and can replay them deterministically.

Re-exports§

pub use error::MatgtoError;
pub use error::Result;
pub use filters::FilterPresets;
pub use filters::RecordingFilters;
pub use hooks::RecordHook;
pub use hooks::RecordHooks;
pub use hooks::ReplayHook;
pub use hooks::ReplayHooks;
pub use matching::BodyMatchMode;
pub use matching::CustomMatcher;
pub use matching::MatchingStrategy;
pub use matching::RequestSignature;
pub use matching::UrlMatchMode;
pub use player::LatencyMode;
pub use player::Player;
pub use proxy::MagnetoProxy;
pub use proxy::ProxyMode;
pub use recorder::Recorder;
pub use templates::TemplateEngine;
pub use tls::CertificateAuthority;
pub use websocket::WebSocketInterceptor;
pub use websocket::WebSocketPlayer;
pub use websocket::WebSocketRecorder;
pub use cassette::Cassette;
pub use cassette::HttpRequest;
pub use cassette::HttpResponse;
pub use cassette::Interaction;
pub use cassette::WebSocketMessage;
pub use cookies::Cookie;
pub use cookies::CookieJar;
pub use cookies::SameSite;
pub use api::ApiConfig;
pub use api::ApiResponse;
pub use api::ApiServer;
pub use api::ProxyStatus;
pub use api::StartProxyRequest;
pub use api::StopProxyRequest;
pub use hydra::ApiDocumentation;
pub use hydra::HydraClass;
pub use hydra::HydraCollection;
pub use hydra::HydraError;
pub use hydra::HydraOperation;
pub use hydra::HydraProperty;
pub use hydra::HydraResponse;
pub use hydra::HydraSearch;
pub use hydra::HydraView;
pub use hydra::JsonLdContext;
pub use hydra::SupportedClass;
pub use hydra::SupportedProperty;

Modules§

api
REST API for controlling Magneto-Serge proxy
cassette
cookies
Cookie handling for session preservation in replay mode
error
Error types for magneto-serge
filters
Request filtering for smart cassette recording
hooks
Hook system for intercepting record and replay operations
hydra
Hydra Core Vocabulary Implementation
matching
Advanced request matching strategies
player
Playing back recorded cassettes
proxy
Core proxy implementation
recorder
Recording HTTP/WebSocket interactions to cassettes
templates
Template rendering for dynamic cassette responses
test_helpers
Test Helpers for Magnéto-Serge
tls
TLS/Certificate management module
websocket
WebSocket module exports

Macros§

assert_cassette
Macro to simplify cassette loading and assertions

Functions§

create_proxy
Create a new MagnetoProxy instance (returns None on error)
version
Get library version