Skip to content

Commit 923f99c

Browse files
committed
[bfops/test-flakes]: Allow custom smoketest subscribe timeout
1 parent 215e1c0 commit 923f99c

1 file changed

Lines changed: 20 additions & 8 deletions

File tree

crates/smoketests/src/lib.rs

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1609,21 +1609,30 @@ log = "0.4"
16091609
/// This matches Python's subscribe semantics - start subscription first,
16101610
/// perform actions, then call the handle to collect results.
16111611
pub fn subscribe_background(&self, queries: &[&str], n: usize) -> Result<SubscriptionHandle> {
1612-
self.subscribe_background_opts(queries, n, None)
1612+
self.subscribe_background_opts(queries, n, Duration::from_secs(30), None)
1613+
}
1614+
1615+
pub fn subscribe_background_with_timeout(
1616+
&self,
1617+
queries: &[&str],
1618+
n: usize,
1619+
timeout: Duration,
1620+
) -> Result<SubscriptionHandle> {
1621+
self.subscribe_background_opts(queries, n, timeout, None)
16131622
}
16141623

16151624
pub fn subscribe_background_on(&self, database: &str, queries: &[&str], n: usize) -> Result<SubscriptionHandle> {
1616-
self.subscribe_background_on_opts(database, queries, n, Some(false))
1625+
self.subscribe_background_on_opts(database, queries, n, Duration::from_secs(30), Some(false))
16171626
}
16181627

16191628
/// Starts a subscription in the background with --confirmed flag.
16201629
pub fn subscribe_background_confirmed(&self, queries: &[&str], n: usize) -> Result<SubscriptionHandle> {
1621-
self.subscribe_background_opts(queries, n, Some(true))
1630+
self.subscribe_background_opts(queries, n, Duration::from_secs(30), Some(true))
16221631
}
16231632

16241633
/// Starts a subscription in the background with --confirmed flag.
16251634
pub fn subscribe_background_unconfirmed(&self, queries: &[&str], n: usize) -> Result<SubscriptionHandle> {
1626-
self.subscribe_background_opts(queries, n, Some(false))
1635+
self.subscribe_background_opts(queries, n, Duration::from_secs(30), Some(false))
16271636
}
16281637

16291638
pub fn subscribe_background_on_confirmed(
@@ -1632,14 +1641,15 @@ log = "0.4"
16321641
queries: &[&str],
16331642
n: usize,
16341643
) -> Result<SubscriptionHandle> {
1635-
self.subscribe_background_on_opts(database, queries, n, Some(true))
1644+
self.subscribe_background_on_opts(database, queries, n, Duration::from_secs(30), Some(true))
16361645
}
16371646

16381647
/// Internal helper for background subscribe with options.
16391648
fn subscribe_background_opts(
16401649
&self,
16411650
queries: &[&str],
16421651
n: usize,
1652+
timeout: Duration,
16431653
confirmed: Option<bool>,
16441654
) -> Result<SubscriptionHandle> {
16451655
let identity = self
@@ -1648,24 +1658,26 @@ log = "0.4"
16481658
.context("No database published")?
16491659
.clone();
16501660

1651-
self.subscribe_background_on_impl(&identity, queries, n, confirmed)
1661+
self.subscribe_background_on_impl(&identity, queries, n, timeout, confirmed)
16521662
}
16531663

16541664
fn subscribe_background_on_opts(
16551665
&self,
16561666
database: &str,
16571667
queries: &[&str],
16581668
n: usize,
1669+
timeout: Duration,
16591670
confirmed: Option<bool>,
16601671
) -> Result<SubscriptionHandle> {
1661-
self.subscribe_background_on_impl(database, queries, n, confirmed)
1672+
self.subscribe_background_on_impl(database, queries, n, timeout, confirmed)
16621673
}
16631674

16641675
fn subscribe_background_on_impl(
16651676
&self,
16661677
database: &str,
16671678
queries: &[&str],
16681679
n: usize,
1680+
timeout: Duration,
16691681
confirmed: Option<bool>,
16701682
) -> Result<SubscriptionHandle> {
16711683
let cli_path = ensure_binaries_built();
@@ -1680,7 +1692,7 @@ log = "0.4"
16801692
self.server_url.clone(),
16811693
database.to_string(),
16821694
"-t".to_string(),
1683-
"30".to_string(),
1695+
timeout.as_secs().to_string(),
16841696
"-n".to_string(),
16851697
n.to_string(),
16861698
"--print-initial-update".to_string(),

0 commit comments

Comments
 (0)