mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-17 02:01:02 +00:00
Make AllSubsystems usage easier in tests (#1794)
* Make `AllSubsystems` usage easier in tests This makes the usage of `AllSubsystems` easier in tests by introducing new methods. - `dummy` initializes `AllSubsystems` with all systems set to dummy - `replace_*` to replace any subsystem Besides that this pr adds a `ForwardSubsystem` that is also useful for tests. This subsystem will forward all incoming messages to the given channel. * Update node/overseer/src/lib.rs Co-authored-by: Andronik Ordian <write@reusable.software> * Update node/subsystem/src/lib.rs Co-authored-by: Andronik Ordian <write@reusable.software> * Update node/subsystem/src/lib.rs Co-authored-by: Andronik Ordian <write@reusable.software> * Move ForwardSubsystem and add a test * Break some lines Co-authored-by: Andronik Ordian <write@reusable.software>
This commit is contained in:
@@ -30,10 +30,7 @@ use kv_log_macro as log;
|
||||
use polkadot_primitives::v1::{BlockData, PoV};
|
||||
use polkadot_overseer::{Overseer, AllSubsystems};
|
||||
|
||||
use polkadot_subsystem::{
|
||||
Subsystem, SubsystemContext, DummySubsystem,
|
||||
SpawnedSubsystem, FromOverseer,
|
||||
};
|
||||
use polkadot_subsystem::{Subsystem, SubsystemContext, SpawnedSubsystem, FromOverseer};
|
||||
use polkadot_subsystem::messages::{
|
||||
CandidateValidationMessage, CandidateBackingMessage, AllMessages,
|
||||
};
|
||||
@@ -141,23 +138,9 @@ fn main() {
|
||||
Delay::new(Duration::from_secs(1)).await;
|
||||
});
|
||||
|
||||
let all_subsystems = AllSubsystems {
|
||||
candidate_validation: Subsystem2,
|
||||
candidate_backing: Subsystem1,
|
||||
candidate_selection: DummySubsystem,
|
||||
statement_distribution: DummySubsystem,
|
||||
availability_distribution: DummySubsystem,
|
||||
bitfield_signing: DummySubsystem,
|
||||
bitfield_distribution: DummySubsystem,
|
||||
provisioner: DummySubsystem,
|
||||
pov_distribution: DummySubsystem,
|
||||
runtime_api: DummySubsystem,
|
||||
availability_store: DummySubsystem,
|
||||
network_bridge: DummySubsystem,
|
||||
chain_api: DummySubsystem,
|
||||
collation_generation: DummySubsystem,
|
||||
collator_protocol: DummySubsystem,
|
||||
};
|
||||
let all_subsystems = AllSubsystems::<()>::dummy()
|
||||
.replace_candidate_validation(Subsystem2)
|
||||
.replace_candidate_backing(Subsystem1);
|
||||
let (overseer, _handler) = Overseer::new(
|
||||
vec![],
|
||||
all_subsystems,
|
||||
|
||||
Reference in New Issue
Block a user