Skip to content

Commit 929335a

Browse files
committed
Add cli test
1 parent 681feeb commit 929335a

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

lighthouse/tests/validator_manager.rs

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -510,9 +510,73 @@ pub fn validator_exit_defaults() {
510510
});
511511
}
512512

513+
#[test]
514+
pub fn validator_exit_exit_epoch_and_presign_flags() {
515+
CommandLineTest::validators_exit()
516+
.flag(
517+
"--validators",
518+
Some(&format!("{},{}", EXAMPLE_PUBKEY_0, EXAMPLE_PUBKEY_1)),
519+
)
520+
.flag("--vc-token", Some("./token.json"))
521+
.flag("--exit-epoch", Some("1234567"))
522+
.flag("--presign", None)
523+
.assert_success(|config| {
524+
let expected = ExitConfig {
525+
vc_url: SensitiveUrl::parse("http://localhost:5062").unwrap(),
526+
vc_token_path: PathBuf::from("./token.json"),
527+
validators_to_exit: vec![
528+
PublicKeyBytes::from_str(EXAMPLE_PUBKEY_0).unwrap(),
529+
PublicKeyBytes::from_str(EXAMPLE_PUBKEY_1).unwrap(),
530+
],
531+
beacon_url: None,
532+
exit_epoch: Some(Epoch::new(1234567)),
533+
presign: true,
534+
};
535+
assert_eq!(expected, config);
536+
});
537+
}
538+
513539
#[test]
514540
pub fn validator_exit_missing_validator_flag() {
515541
CommandLineTest::validators_exit()
516542
.flag("--vc-token", Some("./token.json"))
517543
.assert_failed();
518544
}
545+
546+
#[test]
547+
pub fn validator_exit_using_beacon_and_presign_flags() {
548+
CommandLineTest::validators_exit()
549+
.flag("--vc-token", Some("./token.json"))
550+
.flag(
551+
"--validators",
552+
Some(&format!("{},{}", EXAMPLE_PUBKEY_0, EXAMPLE_PUBKEY_1)),
553+
)
554+
.flag("--beacon-node", Some("http://localhost:1001"))
555+
.flag("--presign", None)
556+
.assert_failed();
557+
}
558+
559+
#[test]
560+
pub fn validator_exit_using_beacon_and_exit_epoch_flags() {
561+
CommandLineTest::validators_exit()
562+
.flag("--vc-token", Some("./token.json"))
563+
.flag(
564+
"--validators",
565+
Some(&format!("{},{}", EXAMPLE_PUBKEY_0, EXAMPLE_PUBKEY_1)),
566+
)
567+
.flag("--beacon-node", Some("http://localhost:1001"))
568+
.flag("--exit-epoch", Some("1234567"))
569+
.assert_failed();
570+
}
571+
572+
#[test]
573+
pub fn validator_exit_exit_epoch_flag_requires_presign_flag() {
574+
CommandLineTest::validators_exit()
575+
.flag("--vc-token", Some("./token.json"))
576+
.flag(
577+
"--validators",
578+
Some(&format!("{},{}", EXAMPLE_PUBKEY_0, EXAMPLE_PUBKEY_1)),
579+
)
580+
.flag("--exit-epoch", Some("1234567"))
581+
.assert_failed();
582+
}

0 commit comments

Comments
 (0)