use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct TestSuiteRunScorerAi {
#[serde(rename = "type")]
pub r#type: TypeTrue,
#[serde(rename = "result")]
pub result: ResultTrue,
#[serde(rename = "reasoning")]
pub reasoning: String,
#[serde(rename = "rubric")]
pub rubric: String,
}
impl TestSuiteRunScorerAi {
pub fn new(
r#type: TypeTrue,
result: ResultTrue,
reasoning: String,
rubric: String,
) -> TestSuiteRunScorerAi {
TestSuiteRunScorerAi {
r#type,
result,
reasoning,
rubric,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum TypeTrue {
#[serde(rename = "ai")]
Ai,
}
impl Default for TypeTrue {
fn default() -> TypeTrue {
Self::Ai
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ResultTrue {
#[serde(rename = "pass")]
Pass,
#[serde(rename = "fail")]
Fail,
}
impl Default for ResultTrue {
fn default() -> ResultTrue {
Self::Pass
}
}