From 57dfc5068760f72416d8194e7de3f61628d3d4d5 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Wed, 1 Nov 2023 21:04:17 -0600 Subject: [PATCH] Get language2 tests passing by not blocking on a foreground task --- crates/gpui2/src/app/test_context.rs | 10 ++++------ crates/gpui2_macros/src/derive_component.rs | 4 ---- crates/language2/src/buffer.rs | 2 +- crates/language2/src/buffer_tests.rs | 1 + 4 files changed, 6 insertions(+), 11 deletions(-) diff --git a/crates/gpui2/src/app/test_context.rs b/crates/gpui2/src/app/test_context.rs index d7bf2b7087a486a8d92698b6ddca3c84ffccf737..6affabdd238eeac363b1c52f6ef7303ad9da88aa 100644 --- a/crates/gpui2/src/app/test_context.rs +++ b/crates/gpui2/src/app/test_context.rs @@ -4,7 +4,7 @@ use crate::{ WindowContext, }; use anyhow::{anyhow, bail}; -use futures::{SinkExt, Stream, StreamExt}; +use futures::{Stream, StreamExt}; use std::{cell::RefCell, future::Future, rc::Rc, sync::Arc, time::Duration}; #[derive(Clone)] @@ -165,13 +165,11 @@ impl TestAppContext { where T::Event: 'static + Clone, { - let (mut tx, rx) = futures::channel::mpsc::unbounded(); + let (tx, rx) = futures::channel::mpsc::unbounded(); entity .update(self, |_, cx: &mut ModelContext| { - cx.subscribe(entity, move |_, _, event, cx| { - cx.background_executor() - .block(tx.send(event.clone())) - .unwrap(); + cx.subscribe(entity, move |_model, _handle, event, _cx| { + let _ = tx.unbounded_send(event.clone()); }) }) .detach(); diff --git a/crates/gpui2_macros/src/derive_component.rs b/crates/gpui2_macros/src/derive_component.rs index b5887e562080b44c39e94598fc8bd8bf58c473a5..d1919c8bc4f475b596bff5119ce132f99ea37f95 100644 --- a/crates/gpui2_macros/src/derive_component.rs +++ b/crates/gpui2_macros/src/derive_component.rs @@ -36,10 +36,6 @@ pub fn derive_component(input: TokenStream) -> TokenStream { } }; - if name == "CollabPanel" { - println!("{}", expanded) - } - TokenStream::from(expanded) } diff --git a/crates/language2/src/buffer.rs b/crates/language2/src/buffer.rs index d8e0149460731695ec7e084a7d5429590b5e3562..3999f275f2aeb581504b3adc66639142e4e65c2d 100644 --- a/crates/language2/src/buffer.rs +++ b/crates/language2/src/buffer.rs @@ -434,7 +434,7 @@ impl Buffer { )); let text_operations = self.text.operations().clone(); - cx.spawn(|_| async move { + cx.background_executor().spawn(async move { let since = since.unwrap_or_default(); operations.extend( text_operations diff --git a/crates/language2/src/buffer_tests.rs b/crates/language2/src/buffer_tests.rs index 2012509878973440c412f7c294a858edf17e69d6..16306fe2ce66accec1fa3aeef36dd7ecf971efc3 100644 --- a/crates/language2/src/buffer_tests.rs +++ b/crates/language2/src/buffer_tests.rs @@ -1943,6 +1943,7 @@ fn test_random_collaboration(cx: &mut AppContext, mut rng: StdRng) { .detach(); buffer }); + buffers.push(buffer); replica_ids.push(i as ReplicaId); network.lock().add_peer(i as ReplicaId);