Add tests

This commit is contained in:
Sosthène Guédon
2024-06-19 14:31:28 +02:00
committed by sosthene-nitrokey
parent 5dede6608e
commit fa56c3d953
2 changed files with 30 additions and 0 deletions
+3
View File
@@ -22,3 +22,6 @@ optional = true
[features]
cbor = ["serde_cbor"]
[dev-dependencies]
serde_test = "1.0.176"
+27
View File
@@ -389,6 +389,33 @@ impl<'de, const N: usize> Deserialize<'de> for Bytes<N> {
}
}
#[cfg(test)]
mod tests_serde {
use super::*;
use serde_test::{assert_tokens, Token};
#[test]
fn all() {
let mut bytes = Bytes::<0>::new();
assert!(bytes.push(1).is_err());
assert_tokens(&bytes, &[Token::Bytes(&[])]);
let mut bytes = Bytes::<16>::new();
bytes.push(1).unwrap();
assert_tokens(&bytes, &[Token::Bytes(&[1])]);
assert!(bytes.extend_from_slice(&[2; 16]).is_err());
assert_eq!(&**bytes, &[1]);
assert!(bytes.extend_from_slice(&[2; 15]).is_ok());
assert_eq!(&**bytes, &[1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]);
assert_tokens(
&bytes,
&[Token::Bytes(&[
1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
])],
);
}
}
#[cfg(test)]
#[cfg(feature = "cbor")]
mod tests {