use super::helpers::*;
#[test]
fn activity_scheduled_no_completion() {
let history = vec![
started_event(1), activity_scheduled(2, "Greet", "Alice"), ];
let mut engine = create_engine(history);
let result = execute(&mut engine, SingleActivityHandler::new("Greet", "Alice"));
assert_continue(&result);
assert!(
engine.pending_actions().is_empty(),
"No new actions expected (already scheduled)"
);
}
#[test]
fn timer_created_no_fire() {
let history = vec![
started_event(1), timer_created(2, 1000), ];
let mut engine = create_engine(history);
let result = execute(&mut engine, SingleTimerHandler::new(std::time::Duration::from_secs(60)));
assert_continue(&result);
assert!(
engine.pending_actions().is_empty(),
"No new actions expected (already scheduled)"
);
}
#[test]
fn external_subscribed_no_event() {
let history = vec![
started_event(1), external_subscribed(2, "Approval"), ];
let mut engine = create_engine(history);
let result = execute(&mut engine, WaitExternalHandler::new("Approval"));
assert_continue(&result);
assert!(
engine.pending_actions().is_empty(),
"No new actions expected (already subscribed)"
);
}
#[test]
fn sub_orch_scheduled_no_completion() {
let history = vec![
started_event(1), sub_orch_scheduled(2, "ChildOrch", "sub::2", "child-input"), ];
let mut engine = create_engine(history);
let result = execute(&mut engine, SubOrchHandler::new("ChildOrch", "child-input"));
assert_continue(&result);
assert!(
engine.pending_actions().is_empty(),
"No new actions expected (already scheduled)"
);
}