mirror of
https://github.com/sigp/lighthouse.git
synced 2026-04-20 14:28:37 +00:00
ef_tests: skipped tests and bls_setting support
This commit is contained in:
30
tests/ef_tests/src/bls_setting.rs
Normal file
30
tests/ef_tests/src/bls_setting.rs
Normal file
@@ -0,0 +1,30 @@
|
||||
use self::BlsSetting::*;
|
||||
use crate::error::Error;
|
||||
use serde_repr::Deserialize_repr;
|
||||
|
||||
// TODO: use this in every test case
|
||||
#[derive(Deserialize_repr, Debug, Clone, Copy)]
|
||||
#[repr(u8)]
|
||||
pub enum BlsSetting {
|
||||
Flexible = 0,
|
||||
Required = 1,
|
||||
Ignored = 2,
|
||||
}
|
||||
|
||||
impl Default for BlsSetting {
|
||||
fn default() -> Self {
|
||||
Flexible
|
||||
}
|
||||
}
|
||||
|
||||
impl BlsSetting {
|
||||
/// Check the BLS setting and skip the test if it isn't compatible with the crypto config.
|
||||
pub fn check(self) -> Result<(), Error> {
|
||||
match self {
|
||||
Flexible => Ok(()),
|
||||
Required if !cfg!(feature = "fake_crypto") => Ok(()),
|
||||
Ignored if cfg!(feature = "fake_crypto") => Ok(()),
|
||||
_ => Err(Error::Skipped),
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user