Refactor before adding NetworkOrigin

This commit is contained in:
Alexander
2026-06-29 20:33:32 +02:00
parent 13f007ebb5
commit 80dfe50aaa
12 changed files with 793 additions and 632 deletions
+15 -7
View File
@@ -1,6 +1,11 @@
use std::io::Write;
use std::path::PathBuf;
use musicfs::origins::local::file_io::assemble_flac_read;
use musicfs::origins::local::file_io::{assemble_flac_read, read_bytes_at};
fn file_reader(path: PathBuf) -> impl Fn(u64, usize) -> std::io::Result<Vec<u8>> {
return move |offset, len| read_bytes_at(&path, offset, len);
}
#[test]
fn assemble_flac_read_picture_header_region() {
@@ -8,15 +13,16 @@ fn assemble_flac_read_picture_header_region() {
let data: Vec<u8> = (0..100).collect();
f.write_all(&data).unwrap();
f.flush().unwrap();
let path = f.path();
let path = f.path().to_path_buf();
let header = b"ABCD";
let pic_hdr = vec![0x86u8, 0x00, 0x00, 0x05];
let pic_ranges = [(10u64, 5u64)];
let real_audio_start = 50u64;
let reader = file_reader(path);
let result = assemble_flac_read(
path,
&reader,
header,
&[pic_hdr.clone()],
&pic_ranges,
@@ -35,15 +41,16 @@ fn assemble_flac_read_picture_data_region() {
let data: Vec<u8> = (0..100).collect();
f.write_all(&data).unwrap();
f.flush().unwrap();
let path = f.path();
let path = f.path().to_path_buf();
let header = b"ABCD";
let pic_hdr = vec![0x86u8, 0x00, 0x00, 0x05];
let pic_ranges = [(10u64, 5u64)];
let real_audio_start = 50u64;
let reader = file_reader(path);
let result = assemble_flac_read(
path,
&reader,
header,
&[pic_hdr.clone()],
&pic_ranges,
@@ -62,12 +69,13 @@ fn assemble_flac_read_full_virtual_layout() {
let data: Vec<u8> = (0..200).map(|i| i as u8).collect();
f.write_all(&data).unwrap();
f.flush().unwrap();
let path = f.path();
let path = f.path().to_path_buf();
let header = vec![0xAA; 8];
let real_audio_start = 100u64;
let result = assemble_flac_read(path, &header, &[], &[], real_audio_start, 0, 18).unwrap();
let reader = file_reader(path);
let result = assemble_flac_read(&reader, &header, &[], &[], real_audio_start, 0, 18).unwrap();
let mut expected = vec![0xAA; 8];
expected.extend_from_slice(&(100..110).map(|i| i as u8).collect::<Vec<u8>>());
+3 -7
View File
@@ -59,25 +59,21 @@ fn build_snapshot_nested_dirs() {
let dest = tempfile::tempdir().unwrap();
fs::create_dir(source.path().join("subdir")).unwrap();
let mut f = fs::File::create(source.path().join("subdir").join("file.txt")).unwrap();
let nested_path = source.path().join("subdir").join("file.txt");
let mut f = fs::File::create(&nested_path).unwrap();
f.write_all(b"nested content").unwrap();
let snapshot = build_snapshot(source.path(), dest.path()).unwrap();
assert!(snapshot.contains_key(&INodeNo::ROOT));
let subdir_entry = snapshot
.values()
.find(|item| item.name == "subdir" && item.file_type == FileType::Directory)
.expect("subdir not found");
let file_entry = snapshot
.values()
.find(|item| item.name == "file.txt" && item.file_type == FileType::File)
.expect("file.txt not found");
assert_eq!(subdir_entry.parent_inode, INodeNo::ROOT);
assert_eq!(file_entry.parent_inode, INodeNo::ROOT);
assert_eq!(file_entry.original_path, nested_path);
}
#[test]