Make `test_propagate_saves_and_fs_changes` more robust

Antonio Scandurra created

...by using a condition that awaits on the actual paths as opposed
to the simple file counts.

Change summary

crates/server/src/rpc.rs | 43 ++++++++++++++++-------------------------
1 file changed, 17 insertions(+), 26 deletions(-)

Detailed changes

crates/server/src/rpc.rs 🔗

@@ -1629,38 +1629,29 @@ mod tests {
             .unwrap();
 
         worktree_a
-            .condition(&cx_a, |tree, _| tree.file_count() == 4)
-            .await;
-        worktree_b
-            .condition(&cx_b, |tree, _| tree.file_count() == 4)
-            .await;
-        worktree_c
-            .condition(&cx_c, |tree, _| tree.file_count() == 4)
-            .await;
-        worktree_a.read_with(&cx_a, |tree, _| {
-            assert_eq!(
+            .condition(&cx_a, |tree, _| {
                 tree.paths()
                     .map(|p| p.to_string_lossy())
-                    .collect::<Vec<_>>(),
-                &[".zed.toml", "file1-renamed", "file3", "file4"]
-            )
-        });
-        worktree_b.read_with(&cx_b, |tree, _| {
-            assert_eq!(
+                    .collect::<Vec<_>>()
+                    == [".zed.toml", "file1-renamed", "file3", "file4"]
+            })
+            .await;
+        worktree_b
+            .condition(&cx_b, |tree, _| {
                 tree.paths()
                     .map(|p| p.to_string_lossy())
-                    .collect::<Vec<_>>(),
-                &[".zed.toml", "file1-renamed", "file3", "file4"]
-            )
-        });
-        worktree_c.read_with(&cx_c, |tree, _| {
-            assert_eq!(
+                    .collect::<Vec<_>>()
+                    == [".zed.toml", "file1-renamed", "file3", "file4"]
+            })
+            .await;
+        worktree_c
+            .condition(&cx_c, |tree, _| {
                 tree.paths()
                     .map(|p| p.to_string_lossy())
-                    .collect::<Vec<_>>(),
-                &[".zed.toml", "file1-renamed", "file3", "file4"]
-            )
-        });
+                    .collect::<Vec<_>>()
+                    == [".zed.toml", "file1-renamed", "file3", "file4"]
+            })
+            .await;
 
         // Ensure buffer files are updated as well.
         buffer_a