mirror of
https://github.com/lightningdevkit/rust-lightning.git
synced 2025-02-25 07:17:40 +01:00
Add some basic sanity tests for feature flags
This commit is contained in:
parent
a3ddb9fb19
commit
4ac9ed2f00
1 changed files with 38 additions and 0 deletions
|
@ -293,3 +293,41 @@ impl<R: ::std::io::Read, T: sealed::Context> Readable<R> for Features<T> {
|
|||
})
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::{ChannelFeatures, InitFeatures, NodeFeatures};
|
||||
|
||||
#[test]
|
||||
fn sanity_test_our_features() {
|
||||
assert!(!ChannelFeatures::supported().requires_unknown_bits());
|
||||
assert!(!ChannelFeatures::supported().supports_unknown_bits());
|
||||
assert!(!InitFeatures::supported().requires_unknown_bits());
|
||||
assert!(!InitFeatures::supported().supports_unknown_bits());
|
||||
assert!(!NodeFeatures::supported().requires_unknown_bits());
|
||||
assert!(!NodeFeatures::supported().supports_unknown_bits());
|
||||
|
||||
assert!(InitFeatures::supported().supports_upfront_shutdown_script());
|
||||
assert!(NodeFeatures::supported().supports_upfront_shutdown_script());
|
||||
|
||||
assert!(InitFeatures::supported().supports_data_loss_protect());
|
||||
assert!(NodeFeatures::supported().supports_data_loss_protect());
|
||||
|
||||
assert!(InitFeatures::supported().supports_variable_length_onion());
|
||||
assert!(NodeFeatures::supported().supports_variable_length_onion());
|
||||
|
||||
let mut init_features = InitFeatures::supported();
|
||||
init_features.set_initial_routing_sync();
|
||||
assert!(!init_features.requires_unknown_bits());
|
||||
assert!(!init_features.supports_unknown_bits());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn sanity_test_unkown_bits_testing() {
|
||||
let mut features = ChannelFeatures::supported();
|
||||
features.set_require_unknown_bits();
|
||||
assert!(features.requires_unknown_bits());
|
||||
features.clear_require_unknown_bits();
|
||||
assert!(!features.requires_unknown_bits());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue