use studio_worker::runtime::{push_recent_job_for_tests, WorkerObservers, RECENT_JOBS_CAP};
#[test]
fn default_observers_start_empty() {
let observers = WorkerObservers::default();
assert!(observers.current_job.lock().is_none());
assert!(observers.recent_jobs.lock().is_empty());
assert!(observers.last_heartbeat.lock().is_none());
}
#[test]
fn recent_jobs_ring_caps_at_recent_jobs_cap() {
let observers = WorkerObservers::default();
for i in 0..(RECENT_JOBS_CAP + 10) {
push_recent_job_for_tests(&observers, &format!("job-{i}"));
}
let ring = observers.recent_jobs.lock();
assert_eq!(ring.len(), RECENT_JOBS_CAP);
assert_eq!(ring[0].job_id, format!("job-{}", RECENT_JOBS_CAP + 9));
}