| 669 | |
| 670 | #[test] |
| 671 | fn bad_magic_rejected() { |
| 672 | let dir = tempfile::tempdir().unwrap(); |
| 673 | let path = dir.path().join("badmagic.vseg"); |
| 674 | |
| 675 | let v = vec![1.0f32, 2.0]; |
| 676 | write_segment(&path, 2, &[&v], &[]).unwrap(); |
| 677 | |
| 678 | let mut data = std::fs::read(&path).unwrap(); |
| 679 | data[0] = b'X'; |
| 680 | std::fs::write(&path, &data).unwrap(); |
| 681 | |
| 682 | let result = MmapVectorSegment::open(&path); |
| 683 | assert!(result.is_err()); |
| 684 | assert_eq!(result.unwrap_err().kind(), std::io::ErrorKind::InvalidData); |
| 685 | } |
| 686 | |
| 687 | #[test] |
| 688 | fn overflow_dim_count_rejected() { |