blob: d64e626ac21e62273e73cfd4f2062de889236c26 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
use crate::zip::file::{bit::DeflateMode, BitFlag};
#[test]
fn test_bit_flag() {
macro_rules! bit_flag {
($($get:ident $set:ident)+) => {
$(
let mut bit_flag = BitFlag::new(0);
assert_eq!(bit_flag.$get(), false);
bit_flag.$set(true);
assert_eq!(bit_flag.$get(), true);
bit_flag.$set(false);
assert_eq!(bit_flag.$get(), false);
)+
};
}
bit_flag!(
is_encrypted set_encrypted
is_imploding_8k set_imploding_8k
is_imploding_3sf_trees set_imploding_3sf_trees
is_lzma_has_eos_marker set_lzma_has_eos_marker
is_has_data_descriptor set_has_data_descriptor
is_patched_data set_patched_data
is_strong_encryption set_strong_encryption
is_utf8 set_utf8
is_cd_encryption set_cd_encryption
);
let mut bit_flag = BitFlag::new(0);
assert_eq!(bit_flag.deflate_mode(), DeflateMode::Normal);
bit_flag.set_deflate_mode(DeflateMode::Maximum);
assert_eq!(bit_flag.deflate_mode(), DeflateMode::Maximum);
bit_flag.set_deflate_mode(DeflateMode::Fast);
assert_eq!(bit_flag.deflate_mode(), DeflateMode::Fast);
bit_flag.set_deflate_mode(DeflateMode::SuperFast);
assert_eq!(bit_flag.deflate_mode(), DeflateMode::SuperFast);
bit_flag.set_deflate_mode(DeflateMode::Normal);
assert_eq!(bit_flag.deflate_mode(), DeflateMode::Normal);
}
|