()
| 119 | |
| 120 | #[test] |
| 121 | fn test_usv_index_node_serialization() { |
| 122 | let quantization_bits = 6; |
| 123 | let mut rng = thread_rng(); |
| 124 | let (dim_bufman, data_bufmans, cache, cursor, _temp_dir) = setup_test(quantization_bits); |
| 125 | |
| 126 | let data = USVIndexNode::new(0, quantization_bits, FileOffset(0)); |
| 127 | |
| 128 | cache |
| 129 | .offset_counter |
| 130 | .fetch_add(USVIndexNode::get_serialized_size(), Ordering::Relaxed); |
| 131 | |
| 132 | for vector_id in 0..100 { |
| 133 | let len = rng.gen_range(10..20); |
| 134 | for _ in 0..len { |
| 135 | let quotient = rng.gen_range(100..2000); |
| 136 | let value = rng.gen_range(0.0..1.0); |
| 137 | data.insert( |
| 138 | quotient, |
| 139 | value, |
| 140 | vector_id, |
| 141 | &cache, |
| 142 | VersionNumber::from(0), |
| 143 | 1.0, |
| 144 | ) |
| 145 | .unwrap(); |
| 146 | } |
| 147 | } |
| 148 | |
| 149 | let offset = data |
| 150 | .serialize( |
| 151 | &dim_bufman, |
| 152 | &data_bufmans, |
| 153 | quantization_bits, |
| 154 | &cache.offset_counter, |
| 155 | cursor, |
| 156 | ) |
| 157 | .unwrap(); |
| 158 | |
| 159 | let deserialized = USVIndexNode::deserialize( |
| 160 | &dim_bufman, |
| 161 | &data_bufmans, |
| 162 | FileOffset(offset), |
| 163 | VersionNumber::from(u32::MAX), |
| 164 | &cache, |
| 165 | ) |
| 166 | .unwrap(); |
| 167 | |
| 168 | assert_eq!(data, deserialized); |
| 169 | } |
| 170 | |
| 171 | #[test] |
| 172 | fn end_to_end_test() { |
nothing calls this directly
no test coverage detected