use crate::eval::monadic_architecture::MonadicEvaluationInput;
use super::{ExpectedOutcome, MockConfiguration, TestAssertion};
use std::collections::HashMap;
/// Test scenario definition for integration tests
#[derive(Debug, Clone)]
pub struct TestScenario {
/// Name of the scenario
pub name: String,
/// Description of what's being tested
pub description: String,
/// Input for the test
pub input: MonadicEvaluationInput,
/// Expected outcome
pub expected_outcome: ExpectedOutcome,
/// Mock configurations for this scenario
pub mock_configs: HashMap<String, MockConfiguration>,
/// Additional assertions
pub assertions: Vec<TestAssertion>,
}