#[test]
fn deimos_date_from_elapsed() {
    let d = deimoss::temporal::calendar::DeimosDate::from_elapsed_days(5.0);
    assert!(d.orbit_index >= 0);
    assert!(d.day_in_orbit >= 0.0);
}

#[test]
fn epoch_j2000_zero() {
    let e = deimoss::temporal::epoch::Epoch::from_julian_date(2_451_545.0);
    assert!((e.days_since_j2000()).abs() < 1e-9);
}

#[test]
fn epoch_days_positive() {
    let e = deimoss::temporal::epoch::Epoch::from_julian_date(2_460_000.0);
    assert!(e.days_since_j2000() > 0.0);
}

#[test]
fn realtime_scale_is_one() {
    let ts = deimoss::temporal::time_scale::TimeScale::realtime();
    assert!((ts.multiplier - 1.0).abs() < 1e-9);
}

#[test]
fn fast_forward_accelerates() {
    let ts = deimoss::temporal::time_scale::TimeScale::fast_forward(100.0);
    let advanced = ts.advance_seconds(1.0);
    assert!((advanced - 100.0).abs() < 1e-9);
}
