18
18
19
19
use clap:: Parser ;
20
20
use color_eyre:: eyre;
21
- use polkadot_cli:: { Cli , RunCmd } ;
21
+ use polkadot_cli:: Cli ;
22
22
23
23
pub ( crate ) mod interceptor;
24
24
pub ( crate ) mod shared;
@@ -33,9 +33,9 @@ use variants::*;
33
33
#[ clap( rename_all = "kebab-case" ) ]
34
34
enum NemesisVariant {
35
35
/// Suggest a candidate with an invalid proof of validity.
36
- SuggestGarbageCandidate ( RunCmd ) ,
36
+ SuggestGarbageCandidate ( Cli ) ,
37
37
/// Back a candidate with a specifically crafted proof of validity.
38
- BackGarbageCandidate ( RunCmd ) ,
38
+ BackGarbageCandidate ( Cli ) ,
39
39
/// Delayed disputing of ancestors that are perfectly fine.
40
40
DisputeAncestor ( DisputeAncestorOptions ) ,
41
41
@@ -57,24 +57,24 @@ struct MalusCli {
57
57
pub finality_delay : Option < u32 > ,
58
58
}
59
59
60
- fn run_cmd ( run : RunCmd ) -> Cli {
61
- Cli { subcommand : None , run }
62
- }
63
-
64
60
impl MalusCli {
65
61
/// Launch a malus node.
66
62
fn launch ( self ) -> eyre:: Result < ( ) > {
67
63
let finality_delay = self . finality_delay ;
68
64
match self . variant {
69
- NemesisVariant :: BackGarbageCandidate ( cmd) =>
70
- polkadot_cli:: run_node ( run_cmd ( cmd) , BackGarbageCandidate , finality_delay) ?,
71
- NemesisVariant :: SuggestGarbageCandidate ( cmd) =>
72
- polkadot_cli:: run_node ( run_cmd ( cmd) , BackGarbageCandidateWrapper , finality_delay) ?,
73
- NemesisVariant :: DisputeAncestor ( opts) => polkadot_cli:: run_node (
74
- run_cmd ( opts. clone ( ) . cmd ) ,
75
- DisputeValidCandidates :: new ( opts) ,
76
- finality_delay,
77
- ) ?,
65
+ NemesisVariant :: BackGarbageCandidate ( cli) =>
66
+ polkadot_cli:: run_node ( cli, BackGarbageCandidate , finality_delay) ?,
67
+ NemesisVariant :: SuggestGarbageCandidate ( cli) =>
68
+ polkadot_cli:: run_node ( cli, BackGarbageCandidateWrapper , finality_delay) ?,
69
+ NemesisVariant :: DisputeAncestor ( opts) => {
70
+ let DisputeAncestorOptions { fake_validation, fake_validation_error, cli } = opts;
71
+
72
+ polkadot_cli:: run_node (
73
+ cli,
74
+ DisputeValidCandidates { fake_validation, fake_validation_error } ,
75
+ finality_delay,
76
+ ) ?
77
+ } ,
78
78
NemesisVariant :: PvfPrepareWorker ( cmd) => {
79
79
#[ cfg( target_os = "android" ) ]
80
80
{
@@ -126,7 +126,7 @@ mod tests {
126
126
variant: NemesisVariant :: DisputeAncestor ( run) ,
127
127
..
128
128
} => {
129
- assert!( run. cmd . base. bob) ;
129
+ assert!( run. cli . run . base. bob) ;
130
130
} ) ;
131
131
}
132
132
}
0 commit comments