pub struct EvaluationCase {
pub id: String,
pub kind: EvaluationCaseKind,
pub query: String,
pub expected_result_ids: Vec<String>,
pub forbidden_result_ids: Vec<String>,
pub required_sources: Vec<RetrieverSource>,
pub expected_stale: Option<bool>,
}Expand description
Expected behavior for one evaluation query or workflow.
Fields§
§id: String§kind: EvaluationCaseKind§query: String§expected_result_ids: Vec<String>§forbidden_result_ids: Vec<String>§required_sources: Vec<RetrieverSource>§expected_stale: Option<bool>Implementations§
Source§impl EvaluationCase
impl EvaluationCase
Sourcepub fn new(
id: impl Into<String>,
kind: EvaluationCaseKind,
query: impl Into<String>,
) -> Result<Self, EvaluationError>
pub fn new( id: impl Into<String>, kind: EvaluationCaseKind, query: impl Into<String>, ) -> Result<Self, EvaluationError>
Validates a case and keeps expected result IDs deterministic.
Sourcepub fn requiring_results(self, ids: &[&str]) -> Result<Self, EvaluationError>
pub fn requiring_results(self, ids: &[&str]) -> Result<Self, EvaluationError>
Adds result IDs that must be present in the observation.
Sourcepub fn forbidding_results(self, ids: &[&str]) -> Result<Self, EvaluationError>
pub fn forbidding_results(self, ids: &[&str]) -> Result<Self, EvaluationError>
Adds result IDs that must not appear in the observation.
Sourcepub fn requiring_sources(self, sources: &[RetrieverSource]) -> Self
pub fn requiring_sources(self, sources: &[RetrieverSource]) -> Self
Requires at least one observed retrieval hit from each listed source.
Sourcepub const fn expecting_stale(self, stale: bool) -> Self
pub const fn expecting_stale(self, stale: bool) -> Self
Requires the response stale flag to match the expected value.
Trait Implementations§
Source§impl Clone for EvaluationCase
impl Clone for EvaluationCase
Source§fn clone(&self) -> EvaluationCase
fn clone(&self) -> EvaluationCase
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for EvaluationCase
impl Debug for EvaluationCase
Source§impl<'de> Deserialize<'de> for EvaluationCase
impl<'de> Deserialize<'de> for EvaluationCase
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for EvaluationCase
Source§impl PartialEq for EvaluationCase
impl PartialEq for EvaluationCase
Source§fn eq(&self, other: &EvaluationCase) -> bool
fn eq(&self, other: &EvaluationCase) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for EvaluationCase
impl Serialize for EvaluationCase
impl StructuralPartialEq for EvaluationCase
Auto Trait Implementations§
impl Freeze for EvaluationCase
impl RefUnwindSafe for EvaluationCase
impl Send for EvaluationCase
impl Sync for EvaluationCase
impl Unpin for EvaluationCase
impl UnsafeUnpin for EvaluationCase
impl UnwindSafe for EvaluationCase
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.