From 7b97b52af021500d8085c875d20215e8dc0f53cc Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Mon, 17 Nov 2025 11:49:49 +0800 Subject: feat: Add file status tracking and SHA1 hash system - Implement SHA1 hash calculation module with async support - Add file status analysis for tracking moves, creates, and modifications - Enhance local file management with relative path handling - Update virtual file actions with improved tracking capabilities --- ...st_sheet_creation_management_and_persistence.rs | 28 +++++++++++++++++----- 1 file changed, 22 insertions(+), 6 deletions(-) (limited to 'crates/vcs_data/vcs_data_test') diff --git a/crates/vcs_data/vcs_data_test/src/test_sheet_creation_management_and_persistence.rs b/crates/vcs_data/vcs_data_test/src/test_sheet_creation_management_and_persistence.rs index f256436..a89fbea 100644 --- a/crates/vcs_data/vcs_data_test/src/test_sheet_creation_management_and_persistence.rs +++ b/crates/vcs_data/vcs_data_test/src/test_sheet_creation_management_and_persistence.rs @@ -58,10 +58,14 @@ async fn test_sheet_creation_management_and_persistence() -> Result<(), std::io: let lib_rs_id = VirtualFileId::new(); sheet - .add_mapping(main_rs_path.clone(), main_rs_id.clone()) + .add_mapping( + main_rs_path.clone(), + main_rs_id.clone(), + "1.0.0".to_string(), + ) .await?; sheet - .add_mapping(lib_rs_path.clone(), lib_rs_id.clone()) + .add_mapping(lib_rs_path.clone(), lib_rs_id.clone(), "1.0.0".to_string()) .await?; // Use output_mappings to generate the InputPackage @@ -88,12 +92,19 @@ async fn test_sheet_creation_management_and_persistence() -> Result<(), std::io: let virtual_file_id = VirtualFileId::new(); sheet - .add_mapping(mapping_path.clone(), virtual_file_id.clone()) + .add_mapping( + mapping_path.clone(), + virtual_file_id.clone(), + "1.0.0".to_string(), + ) .await?; // Verify mapping was added assert_eq!(sheet.mapping().len(), 3); - assert_eq!(sheet.mapping().get(&mapping_path), Some(&virtual_file_id)); + assert_eq!( + sheet.mapping().get(&mapping_path).map(|meta| &meta.id), + Some(&virtual_file_id) + ); // Test 4: Persist sheet to disk sheet.persist().await?; @@ -270,10 +281,14 @@ async fn test_sheet_data_serialization() -> Result<(), std::io::Error> { let lib_rs_id = VirtualFileId::new(); sheet - .add_mapping(main_rs_path.clone(), main_rs_id.clone()) + .add_mapping( + main_rs_path.clone(), + main_rs_id.clone(), + "1.0.0".to_string(), + ) .await?; sheet - .add_mapping(lib_rs_path.clone(), lib_rs_id.clone()) + .add_mapping(lib_rs_path.clone(), lib_rs_id.clone(), "1.0.0".to_string()) .await?; // Use output_mappings to generate the InputPackage @@ -288,6 +303,7 @@ async fn test_sheet_data_serialization() -> Result<(), std::io::Error> { .add_mapping( vcs_data::data::sheet::SheetPathBuf::from("output/build.exe"), build_exe_id, + "1.0.0".to_string(), ) .await?; -- cgit