Expand description
Integration-tier test support for rust-camel (ADR-0069).
This crate owns the scenario model: the parsing of .test.yaml
documents that declare a scenario: section, the ordered action
vocabulary (send, receive, sleep, validate), endpoint
references with partner provisioning, and the document-level rules
that keep the scenario vocabulary separate from the unit-tier
vocabulary (inputs, expects, intercepts).
The tier derivation, the layered environment source, the action runner, and the partner adapters are built on the model types defined here.
The system under test is always an embedded boot. The harness never
drives a deployed camel run process.
Re-exports§
pub use adapters::DirectStimulus;pub use adapters::FakeAdapter;pub use adapters::FakeRecorder;pub use adapters::IncomingMessage;pub use adapters::OutgoingMessage;pub use adapters::PartnerAdapter;pub use adapters::PartnerRouter;pub use adapters::ReceiveError;pub use adapters::ReceiveTimeout;pub use adapters::RecordedSend;pub use adapters::TransportError;pub use boot_scenario::ScenarioRun;pub use boot_scenario::boot_scenario;pub use document::DocError;pub use document::EndpointRef;pub use document::InboundListener;pub use document::PartnerFault;pub use document::PartnerScript;pub use document::PartnerScriptResponse;pub use document::Provisioning;pub use document::RouteSource;pub use document::ScenarioAction;pub use document::ScenarioDocument;pub use document::ScenarioTarget;pub use document::SqlTarget;pub use document::ValidateExpectation;pub use document::parse_scenario_document;pub use env_layers::AmbientLookup;pub use env_layers::LayeredEnv;pub use env_layers::ambient_std;pub use log_capture::LogEvent;pub use log_capture::WindowHandle;pub use log_capture::capture_installed;pub use log_capture::ensure_capture_subscriber;pub use runner::DocumentOutcome;pub use runner::ScenarioFailure;pub use runner::ScenarioVars;pub use runner::ScenarioVerdict;pub use runner::run_scenario;pub use runner::run_scenario_document;pub use sql_action::RawSqlAction;pub use sql_action::SQL_ACTION_KEY;pub use sql_action::SQL_MEMORY_NOT_SHARED;pub use sql_action::SqlAction;pub use sql_action::is_read_statement;pub use sql_action::sanitize_db_error;pub use sql_action::validate_sql_action;pub use tier::DocumentInputs;pub use tier::Tier;pub use tier::derive_tier;
Modules§
- adapters
- Partner adapters and the endpoint-keyed router (ADR-0069 §5, §7).
- boot_
scenario - The embedded FULL-tier scenario boot (ADR-0069 sections 4, 5, 10).
- document
- Scenario document model, parsing, and validation (ADR-0069 sections 1-2).
- env_
layers - Layered hermetic environment source (ADR-0069 §4).
- log_
capture - Process-global log capture (rc-tdgh5): the capture subscriber, the
open windows, and the captured events behind the scenario tier’s
document-level
logs:assertions. The harness claims the process’s tracing seat before the composition root’s boot (first-winstry_init); when it owns the seat,log_capture::CaptureLayerattributes every event to every open window whose[opened_at, now)interval contains the event timestamp. Process-global log capture for the scenario tier’s document-levellogs:assertions (rc-tdgh5). - runner
- The scenario action runner (ADR-0069 §5, §7).
- sql_
action - Scenario
sql:action — datasource state preparation for the integration tier (bd rc-25lup.1). - tier
- Pure tier derivation (ADR-0069 section 1).
Structs§
- Partner
Expectation - A recorded-request expectation: a count bound plus optional
method,path, andquerysubset filters. - Rows
Expectation - The sql-target row-shape expectation: exactly one row shape is
populated at parse time — concrete row patterns or a row-count
bound (
rowsXORbound).
Enums§
- Count
Bound - The recorded-request count bound of a
RequestExpectation: exactly one bound form per expectation. Poll semantics per bound (arrivals only add, so the filtered count is monotone non-decreasing): - Expectation
- A validation expectation. The grammar keys mirror the mock-testkit
matcher rules:
equals,regex,contains,startsWith,endsWith,exists,jsonSubset. - Path
Filter - The path filter of a
RequestExpectationover the recorded path-and-query; at most one filter per expectation.