diff --git a/src/serial_input.rs b/src/serial_input.rs index 10c3626..b65cd5f 100644 --- a/src/serial_input.rs +++ b/src/serial_input.rs @@ -60,6 +60,7 @@ mod tests { use super::*; use std::sync::mpsc; use crate::sync_logic::LtcState; + use num_rational::Ratio; use regex::Regex; fn get_ltc_regex() -> Regex { @@ -119,7 +120,7 @@ mod tests { assert_eq!(st.free_count, 1); let received_frame = rx.try_recv().unwrap(); assert_eq!(received_frame.status, "FREE"); - assert_eq!(received_frame.frame_rate, 29.97); + assert_eq!(received_frame.frame_rate, Ratio::new(30000, 1001)); } #[test] diff --git a/src/sync_logic.rs b/src/sync_logic.rs index 06b14f0..630e879 100644 --- a/src/sync_logic.rs +++ b/src/sync_logic.rs @@ -173,9 +173,9 @@ impl LtcState { pub fn get_sync_status(delta_ms: i64, config: &Config) -> &'static str { if config.timeturner_offset.is_active() { "TIMETURNING" - } else if delta_ms.abs() <= 1 { + } else if delta_ms.abs() <= 8 { "IN SYNC" - } else if delta_ms > 2 { + } else if delta_ms > 10 { "CLOCK AHEAD" } else { "CLOCK BEHIND" diff --git a/src/system.rs b/src/system.rs index 0ce73aa..7d089e6 100644 --- a/src/system.rs +++ b/src/system.rs @@ -1,6 +1,6 @@ use crate::config::Config; use crate::sync_logic::LtcFrame; -use chrono::{DateTime, Duration as ChronoDuration, Local, NaiveTime, TimeZone}; +use chrono::{DateTime, Duration as ChronoDuration, Local, TimeZone}; use num_rational::Ratio; use std::process::Command;