mod assertions;
#[cfg(feature = "testing-lab")]
mod client;
#[cfg(feature = "testing-lab")]
mod context;
pub mod fixtures;
mod server;
mod timing;
mod trace;
pub use assertions::*;
pub use server::*;
pub use timing::*;
pub use trace::*;
#[cfg(feature = "testing-lab")]
pub mod lab {
pub use super::client::*;
pub use super::context::*;
pub use crate::{LabConfig, LabRuntime};
}
pub mod prelude {
pub use super::{
Stopwatch,
TestServer,
TestServerBuilder,
TestTrace,
TestTraceBuilder,
TestTraceOutput,
Timer,
TimingStats,
TraceEntry,
TraceLevel,
TraceSummary,
assert_content_valid,
assert_is_notification,
assert_is_request,
assert_json_rpc_error,
assert_json_rpc_success,
assert_json_rpc_valid,
assert_mcp_compliant,
assert_prompt_valid,
assert_resource_valid,
assert_tool_valid,
is_trace_enabled,
measure_duration,
};
#[cfg(feature = "testing-lab")]
pub use super::lab::{LabConfig, LabRuntime, TestClient, TestContext};
pub use crate::{
Content, Cx, JsonRpcMessage, JsonRpcRequest, JsonRpcResponse, McpContext, McpError,
McpErrorCode, McpResult, Prompt, Resource, Tool,
};
pub use serde_json::json;
}