use acr::compression::ZipMethod as Method; use dh::recommended::*; use neozip::integrity; #[test] fn metadata_000() { let path = "tests/samples/000.zip"; let mut reader = dh::file::open_r(path).unwrap(); let metadata = neozip::metadata(&mut reader).unwrap(); assert_eq!(metadata.files.len(), 1); assert_eq!(metadata.files[0].path, "test.txt"); assert_eq!(metadata.files[0].size, 14); assert_eq!(metadata.files[0].compression, Method::Stored); assert_eq!(metadata.files[0].uncompressed_size, 14); assert_eq!( metadata.files[0].modified.to_rfc3339(), "2024-07-11T18:14:42+00:00" ); assert!(integrity::verify(&mut reader, &metadata.files[0], 1024).unwrap()); } #[test] fn metadata_001() { let path = "tests/samples/001.zip"; let mut reader = dh::file::open_r(path).unwrap(); let metadata = neozip::metadata(&mut reader).unwrap(); assert_eq!(metadata.files.len(), 2); assert_eq!(metadata.files[0].path, "test.txt"); assert_eq!(metadata.files[0].size, 14); assert_eq!(metadata.files[0].compression, Method::Stored); assert_eq!(metadata.files[0].uncompressed_size, 14); assert_eq!( metadata.files[0].modified.to_rfc3339(), "2024-07-12T18:11:08+00:00" ); assert_eq!(metadata.files[1].path, "test2.txt"); assert_eq!(metadata.files[1].size, 16); assert_eq!(metadata.files[1].compression, Method::Stored); assert_eq!(metadata.files[1].uncompressed_size, 16); assert_eq!( metadata.files[1].modified.to_rfc3339(), "2024-07-12T18:11:26+00:00" ); assert!(integrity::verify_all(&mut reader, &metadata.files, 1024).unwrap()); } #[test] fn metadata_002() { let path = "tests/samples/002.zip"; let mut reader = dh::file::open_r(path).unwrap(); let metadata = neozip::metadata(&mut reader).unwrap(); assert_eq!(metadata.files.len(), 3); assert_eq!(metadata.files[0].path, "test/"); assert_eq!(metadata.files[0].size, 0); assert_eq!(metadata.files[0].compression, Method::Stored); assert_eq!(metadata.files[0].uncompressed_size, 0); assert_eq!( metadata.files[0].modified.to_rfc3339(), "2024-07-13T14:27:00+00:00" ); assert!(metadata.files[0].directory); assert_eq!(metadata.files[1].path, "test/test.txt"); assert_eq!(metadata.files[1].size, 14); assert_eq!(metadata.files[1].compression, Method::Stored); assert_eq!(metadata.files[1].uncompressed_size, 14); assert_eq!( metadata.files[1].modified.to_rfc3339(), "2024-07-13T14:26:48+00:00" ); assert_eq!(metadata.files[2].path, "test.txt"); assert_eq!(metadata.files[2].size, 14); assert_eq!(metadata.files[2].compression, Method::Stored); assert_eq!(metadata.files[2].uncompressed_size, 14); assert_eq!( metadata.files[2].modified.to_rfc3339(), "2024-07-13T14:26:48+00:00" ); assert!(integrity::verify_all(&mut reader, &metadata.files, 1024).unwrap()); }