aboutsummaryrefslogtreecommitdiff
path: root/src/app/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/mod.rs')
-rw-r--r--src/app/mod.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/app/mod.rs b/src/app/mod.rs
index 51a6678e..a598100a 100644
--- a/src/app/mod.rs
+++ b/src/app/mod.rs
@@ -1148,6 +1148,35 @@ mod tests {
}
#[test]
+ fn headless_next_loop_deadline_ignores_resize_poll() {
+ let mut app = test_app();
+ let now = Instant::now();
+ app.next_resize_poll = now + Duration::from_millis(100);
+ app.session_save_deadline = Some(now + Duration::from_secs(2));
+ app.next_auto_update_check = Some(now + Duration::from_secs(6));
+
+ assert_eq!(
+ app.next_headless_loop_deadline(now, false),
+ app.session_save_deadline
+ );
+ }
+
+ #[test]
+ fn headless_next_loop_deadline_returns_none_when_resize_poll_is_only_deadline() {
+ let mut app = test_app();
+ let now = Instant::now();
+ app.next_resize_poll = now - Duration::from_millis(1);
+ app.config_diagnostic_deadline = None;
+ app.toast_deadline = None;
+ app.next_animation_tick = None;
+ app.next_auto_update_check = None;
+ app.session_save_deadline = None;
+ app.state.workspaces.clear();
+
+ assert_eq!(app.next_headless_loop_deadline(now, false), None);
+ }
+
+ #[test]
fn due_session_save_deadline_is_cleared() {
let mut app = test_app();
app.session_save_deadline = Some(Instant::now() - Duration::from_secs(1));