mirror of
https://github.com/logos-blockchain/logos-blockchain-testing.git
synced 2026-02-16 19:23:09 +00:00
Make manual cluster self-cleaning
This commit is contained in:
parent
13a75e7818
commit
acb146606b
@ -5,7 +5,7 @@ use testing_framework_core::{
|
||||
scenario::{PeerSelection, StartNodeOptions},
|
||||
topology::config::TopologyConfig,
|
||||
};
|
||||
use testing_framework_runner_local::ManualClusterGuard;
|
||||
use testing_framework_runner_local::ManualCluster;
|
||||
use tokio::time::sleep;
|
||||
use tracing_subscriber::fmt::try_init;
|
||||
|
||||
@ -26,8 +26,8 @@ async fn manual_cluster_two_clusters_merge() -> Result<()> {
|
||||
// - `POL_PROOF_DEV_MODE=true`
|
||||
// - `RUST_LOG=info` (optional)
|
||||
let config = TopologyConfig::with_node_numbers(2, 0);
|
||||
let cluster = ManualClusterGuard::from_config(config)?;
|
||||
// Nodes are stopped automatically when the guard is dropped.
|
||||
let cluster = ManualCluster::from_config(config)?;
|
||||
// Nodes are stopped automatically when the cluster is dropped.
|
||||
|
||||
println!("starting validator a");
|
||||
|
||||
|
||||
@ -2,6 +2,6 @@ mod manual;
|
||||
mod node_control;
|
||||
mod runner;
|
||||
|
||||
pub use manual::{ManualCluster, ManualClusterError, ManualClusterGuard};
|
||||
pub use manual::{ManualCluster, ManualClusterError};
|
||||
pub use node_control::{LocalDynamicError, LocalDynamicNodes, LocalDynamicSeed};
|
||||
pub use runner::{LocalDeployer, LocalDeployerError};
|
||||
|
||||
@ -1,5 +1,3 @@
|
||||
use std::ops::Deref;
|
||||
|
||||
use testing_framework_core::{
|
||||
nodes::ApiClient,
|
||||
scenario::{StartNodeOptions, StartedNode},
|
||||
@ -32,32 +30,6 @@ pub struct ManualCluster {
|
||||
nodes: LocalDynamicNodes,
|
||||
}
|
||||
|
||||
pub struct ManualClusterGuard {
|
||||
cluster: ManualCluster,
|
||||
}
|
||||
|
||||
impl ManualClusterGuard {
|
||||
pub fn from_config(config: TopologyConfig) -> Result<Self, ManualClusterError> {
|
||||
Ok(Self {
|
||||
cluster: ManualCluster::from_config(config)?,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
impl Deref for ManualClusterGuard {
|
||||
type Target = ManualCluster;
|
||||
|
||||
fn deref(&self) -> &Self::Target {
|
||||
&self.cluster
|
||||
}
|
||||
}
|
||||
|
||||
impl Drop for ManualClusterGuard {
|
||||
fn drop(&mut self) {
|
||||
self.cluster.stop_all();
|
||||
}
|
||||
}
|
||||
|
||||
impl ManualCluster {
|
||||
pub fn from_config(config: TopologyConfig) -> Result<Self, ManualClusterError> {
|
||||
let builder = TopologyBuilder::new(config);
|
||||
@ -127,3 +99,9 @@ impl ManualCluster {
|
||||
ManualNetworkReadiness::new(nodes).wait().await
|
||||
}
|
||||
}
|
||||
|
||||
impl Drop for ManualCluster {
|
||||
fn drop(&mut self) {
|
||||
self.stop_all();
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user