MCPcopy Create free account
hub / github.com/SoftbearStudios/bitcode / test

Function test

src/f32.rs:125–145  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

123
124 #[test]
125 fn test() {
126 for i in 1..16 {
127 let mut rng = ChaCha20Rng::from_seed(Default::default());
128 let floats: Vec<_> = (0..i).map(|_| f32::from_bits(rng.gen())).collect();
129
130 let mut encoder = F32Encoder::default();
131 encoder.reserve(NonZeroUsize::new(floats.len()).unwrap());
132 for &f in &floats {
133 encoder.encode(&f);
134 }
135 let bytes = encoder.collect();
136
137 let mut decoder = F32Decoder::default();
138 let mut slice = bytes.as_slice();
139 decoder.populate(&mut slice, floats.len()).unwrap();
140 assert!(slice.is_empty());
141 for &f in &floats {
142 assert_eq!(f.to_bits(), decoder.decode().to_bits());
143 }
144 }
145 }
146
147 fn bench_data() -> Vec<f32> {
148 crate::random_data::<f32>(1500001)

Callers

nothing calls this directly

Calls 6

as_sliceMethod · 0.80
collectMethod · 0.45
reserveMethod · 0.45
lenMethod · 0.45
encodeMethod · 0.45
populateMethod · 0.45

Tested by

no test coverage detected