use super::*;
#[derive(Clone, Debug, Getter, New, Serialize)]
#[new(pub(crate))]
pub(crate) struct CaseResult {
#[get(pub(crate))]
pub(crate) name: String,
#[get(pub(crate), type(copy))]
pub(crate) passed: bool,
#[get(pub(crate))]
pub(crate) error: Option<String>,
#[get(pub(crate), type(copy))]
pub(crate) elapsed_ms: u128,
#[get(pub(crate))]
pub(crate) capture_error: Option<String>,
}
#[derive(Clone, Debug, Getter, New, Serialize)]
#[new(pub(crate))]
pub(crate) struct Resources {
#[get(pub(crate), type(copy))]
pub(crate) driver_pid: u32,
#[get(pub(crate), type(copy))]
pub(crate) driver_port: u16,
#[get(pub(crate))]
pub(crate) server_pid: Option<u32>,
#[get(pub(crate))]
pub(crate) server_port: Option<u16>,
#[get(pub(crate))]
pub(crate) session: String,
#[get(pub(crate), type(copy))]
pub(crate) cleaned_up: bool,
#[get(pub(crate))]
pub(crate) browser_capabilities: Value,
}
#[derive(Clone, Debug, Getter, New, Serialize)]
#[new(pub(crate))]
pub(crate) struct SuiteReport {
#[get(pub(crate), type(copy))]
pub(crate) schema_version: u32,
#[get(pub(crate))]
pub(crate) url: String,
#[get(pub(crate))]
pub(crate) cases: Vec<CaseResult>,
#[get(pub(crate))]
pub(crate) resources: Resources,
}