1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
3pub enum CodecName {
4 None,
5 JPEG,
6 LZ4,
7 Blosc,
8 BSLZ4,
9}
10
11#[derive(Debug, Clone)]
13pub struct Codec {
14 pub name: CodecName,
15 pub compressed_size: usize,
16 pub level: i32,
17 pub shuffle: i32,
18 pub compressor: i32,
19}
20
21#[cfg(test)]
22mod tests {
23 use super::*;
24
25 #[test]
26 fn test_codec_clone() {
27 let c = Codec {
28 name: CodecName::LZ4,
29 compressed_size: 1024,
30 level: 0,
31 shuffle: 0,
32 compressor: 0,
33 };
34 let c2 = c.clone();
35 assert_eq!(c2.name, CodecName::LZ4);
36 assert_eq!(c2.compressed_size, 1024);
37 }
38
39 #[test]
40 fn test_codec_name_none() {
41 assert_eq!(CodecName::None, CodecName::None);
42 assert_ne!(CodecName::None, CodecName::JPEG);
43 }
44}