From 779095addd0573466376866e24428ba806454c41 Mon Sep 17 00:00:00 2001 From: Ahmed Ibrahim Date: Sun, 8 Mar 2026 23:16:23 -0700 Subject: [PATCH] codex: stabilize app list update ordering test --- .../app-server/tests/suite/v2/app_list.rs | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/codex-rs/app-server/tests/suite/v2/app_list.rs b/codex-rs/app-server/tests/suite/v2/app_list.rs index 638a020a8c..9bd654349c 100644 --- a/codex-rs/app-server/tests/suite/v2/app_list.rs +++ b/codex-rs/app-server/tests/suite/v2/app_list.rs @@ -501,16 +501,6 @@ async fn list_apps_waits_for_accessible_data_before_emitting_directory_updates() }) .await?; - let maybe_update = timeout( - Duration::from_millis(150), - read_app_list_updated_notification(&mut mcp), - ) - .await; - assert!( - maybe_update.is_err(), - "unexpected directory-only app/list update before accessible apps loaded" - ); - let expected = vec![ AppInfo { id: "beta".to_string(), @@ -544,8 +534,17 @@ async fn list_apps_waits_for_accessible_data_before_emitting_directory_updates() }, ]; - let update = read_app_list_updated_notification(&mut mcp).await?; - assert_eq!(update.data, expected); + loop { + let update = read_app_list_updated_notification(&mut mcp).await?; + if update.data == expected { + break; + } + + assert!( + !update.data.is_empty() && update.data.iter().all(|connector| connector.is_accessible), + "unexpected directory-only app/list update before accessible apps loaded" + ); + } let response: JSONRPCResponse = timeout( DEFAULT_TIMEOUT,