Open buffers from definitions request in random collab test
Max Brunsfeld
created
Don't try to open buffers from the weak worktrees directly, as this is
expected to fail if the host drops the buffer for that worktree.
Change summary
crates/server/src/rpc.rs | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
Detailed changes
@@ -4880,7 +4880,8 @@ mod tests {
project
.worktrees(&cx)
.filter(|worktree| {
- worktree.read(cx).entries(false).any(|e| e.is_file())
+ let worktree = worktree.read(cx);
+ !worktree.is_weak() && worktree.entries(false).any(|e| e.is_file())
})
.choose(&mut *rng.lock())
}) {
@@ -5033,13 +5034,14 @@ mod tests {
project.definition(&buffer, offset, cx)
});
let definitions = cx.background().spawn(async move {
- definitions.await.expect("definitions request failed");
+ definitions.await.expect("definitions request failed")
});
if rng.lock().gen_bool(0.3) {
log::info!("Guest {}: detaching definitions request", guest_id);
definitions.detach();
} else {
- definitions.await;
+ self.buffers
+ .extend(definitions.await.into_iter().map(|loc| loc.buffer));
}
}
50..=55 => {