Expand description
§MockForge OpenAPI
OpenAPI 3.x / Swagger 2.0 specification loading, parsing, schema validation, and response selection primitives for MockForge.
This crate owns the OpenApiSpec domain model used throughout MockForge to
drive mock responses, routing, validation, and contract analysis. It was
extracted from mockforge-core so that downstream crates (contract drift,
intelligence, recorders, etc.) can depend on OpenAPI types without pulling in
the entirety of core.
§Modules
spec—OpenApiSpecloader (file / string / JSON / YAML), schema resolution, operation iteration. Handles transparent Swagger 2.0 → OpenAPI 3.0 conversion viaswagger_convert.schema—OpenApiSchemawrapper with JSON-Schema-backed validation.multi_spec— [MultiSpec], load and merge multiple OpenAPI docs with conflict strategies.response_selection—ResponseSelectionMode+ResponseSelectorfor choosing between multiple example responses (first / scenario / sequential / random / weighted).spec_parser— unifiedOpenApiValidator/GraphQLValidator+SpecFormatdetector covering OpenAPI 2.0/3.0/3.1 and GraphQL.validation— request/response validation helpers against anOpenApiSpec.swagger_convert— Swagger 2.0 → OpenAPI 3.0 conversion helper used byspec(re-exported for advanced callers).
Re-exports§
pub use custom_fixture::CustomFixtureLoader;pub use request_fingerprint::RequestFingerprint;pub use response_rewriter::ResponseRewriter;pub use spec_parser::GraphQLValidator;pub use spec_parser::OpenApiValidator;pub use spec_parser::SpecFormat;pub use response::*;pub use route::*;pub use schema::*;pub use spec::*;pub use validation::*;
Modules§
- custom_
fixture - Custom fixture format support for simple JSON fixtures
- multi_
spec - Multi-spec loading and merging utilities
- openapi_
routes - OpenAPI-based route generation for MockForge
- request_
fingerprint - Request fingerprinting system for unique request identification and priority-based response selection.
- response
- OpenAPI response generation and mocking
- response_
rewriter ResponseRewritertrait for post-generation response mutation.- response_
selection ResponseSelectionMode/ResponseSelectorlive inmockforge_foundation::response_selection— it’s a generic selection primitive used by non-OpenAPI response trace code. Re-export here somockforge_openapi::response_selection::...paths keep resolving. Response selection modes for multiple responses/examples- response_
trace - Response generation trace instrumentation
- route
- OpenAPI route generation from specifications
- schema
- OpenAPI schema validation and handling
- spec
- OpenAPI specification loading and parsing
- spec_
parser - Unified specification parser and validator
- swagger_
convert - Swagger 2.0 to OpenAPI 3.0 conversion
- validation
- OpenAPI request/response validation
Structs§
- Open
ApiOperation - Wrapper for OpenAPI operation with enhanced metadata.
- Response
Selector - Response selector with state for sequential mode
Enums§
- Response
Selection Mode - Mode for selecting responses when multiple options are available
Type Aliases§
- Open
ApiSecurity Requirement - Type alias for OpenAPI security requirements.