Skip to content

Commit

Permalink
buffer backend: test calculate_var7_size alongside encode_var_usize
Browse files Browse the repository at this point in the history
  • Loading branch information
royaltm committed Jun 11, 2024
1 parent 55df1e7 commit 5b022da
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion src/backend/buffer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@ fn decode_var_usize_cold(buffer: &[u8]) -> Option<(usize, usize)> {

#[cfg(test)]
mod tests {
use super::{decode_var_usize, encode_var_usize};
use super::{decode_var_usize, encode_var_usize, calculate_var7_size};
#[cfg(not(feature = "std"))]
use alloc::vec::Vec;

Expand All @@ -334,6 +334,7 @@ mod tests {
let mut buffer = Vec::new();
for i in 0..2usize.pow(7) {
buffer.clear();
assert_eq!(calculate_var7_size(i), 1);
assert_eq!(encode_var_usize(&mut buffer, i), 1);
assert_eq!(buffer, [i as u8]);
assert_eq!(decode_var_usize(&buffer), Some((i, 1)));
Expand All @@ -345,6 +346,7 @@ mod tests {
let mut buffer = Vec::new();
for i in 2usize.pow(7)..2usize.pow(14) {
buffer.clear();
assert_eq!(calculate_var7_size(i), 2);
assert_eq!(encode_var_usize(&mut buffer, i), 2);
assert_eq!(buffer, [0x80 | ((i & 0x7F) as u8), (0x7F & (i >> 7) as u8)]);
assert_eq!(decode_var_usize(&buffer), Some((i, 2)));
Expand All @@ -357,6 +359,7 @@ mod tests {
let mut buffer = Vec::new();
for i in 2usize.pow(14)..2usize.pow(21) {
buffer.clear();
assert_eq!(calculate_var7_size(i), 3);
assert_eq!(encode_var_usize(&mut buffer, i), 3);
assert_eq!(
buffer,
Expand All @@ -376,6 +379,7 @@ mod tests {
let mut buffer = Vec::new();
for i in range {
buffer.clear();
assert_eq!(calculate_var7_size(i), 4);
assert_eq!(encode_var_usize(&mut buffer, i), 4);
assert_eq!(
buffer,
Expand Down Expand Up @@ -418,6 +422,7 @@ mod tests {
fn encode_var_u32_max_works() {
let mut buffer = Vec::new();
let i = u32::MAX as usize;
assert_eq!(calculate_var7_size(i), 5);
assert_eq!(encode_var_usize(&mut buffer, i), 5);
assert_eq!(buffer, [0xFF, 0xFF, 0xFF, 0xFF, 0x0F]);
assert_eq!(decode_var_usize(&buffer), Some((i, 5)));
Expand All @@ -427,6 +432,7 @@ mod tests {
fn encode_var_u64_max_works() {
let mut buffer = Vec::new();
let i = u64::MAX as usize;
assert_eq!(calculate_var7_size(i), 10);
assert_eq!(encode_var_usize(&mut buffer, i), 10);
assert_eq!(
buffer,
Expand Down

0 comments on commit 5b022da

Please sign in to comment.