// Code generated by oagen. DO NOT EDIT.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct VerdictSummary {
    pub passed: bool,
    /// Defaults to `0`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub assertions_passed: Option<i64>,
    /// Defaults to `0`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub assertions_failed: Option<i64>,
    /// Defaults to `0`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub blocked_assertions: Option<i64>,
    /// Defaults to `[]`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub failed_assertion_ids: Option<Vec<String>>,
}
impl VerdictSummary {
    /// Construct a new `VerdictSummary` with the required fields set.
    #[allow(deprecated)]
    pub fn new(passed: bool) -> Self {
        Self {
            passed,
            assertions_passed: Default::default(),
            assertions_failed: Default::default(),
            blocked_assertions: Default::default(),
            failed_assertion_ids: Default::default(),
        }
    }
}
