MCPcopy Create free account
hub / github.com/Recordscript/recordscript / test_codec1

Function test_codec1

libs/hbb_common/src/bytes_codec.rs:141–173  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

139 use super::*;
140 #[test]
141 fn test_codec1() {
142 let mut codec = BytesCodec::new();
143 let mut buf = BytesMut::new();
144 let mut bytes: Vec<u8> = Vec::new();
145 bytes.resize(0x3F, 1);
146 assert!(codec.encode(bytes.into(), &mut buf).is_ok());
147 let buf_saved = buf.clone();
148 assert_eq!(buf.len(), 0x3F + 1);
149 if let Ok(Some(res)) = codec.decode(&mut buf) {
150 assert_eq!(res.len(), 0x3F);
151 assert_eq!(res[0], 1);
152 } else {
153 panic!();
154 }
155 let mut codec2 = BytesCodec::new();
156 let mut buf2 = BytesMut::new();
157 if let Ok(None) = codec2.decode(&mut buf2) {
158 } else {
159 panic!();
160 }
161 buf2.extend(&buf_saved[0..1]);
162 if let Ok(None) = codec2.decode(&mut buf2) {
163 } else {
164 panic!();
165 }
166 buf2.extend(&buf_saved[1..]);
167 if let Ok(Some(res)) = codec2.decode(&mut buf2) {
168 assert_eq!(res.len(), 0x3F);
169 assert_eq!(res[0], 1);
170 } else {
171 panic!();
172 }
173 }
174
175 #[test]
176 fn test_codec2() {

Callers

nothing calls this directly

Calls 2

cloneMethod · 0.45
decodeMethod · 0.45

Tested by

no test coverage detected