feat: complete Issue #146 final integration testing
Fixed all remaining test failures in test_issue_146_final_integration.py achieving 100% test success rate (9/9 tests passing): - Fixed performance monitoring metrics access patterns - Resolved AssetManager constructor parameter handling - Implemented missing CLI command methods (add_asset, list_assets, get_asset_info) - Added cross-platform symlink creation method aliases - Fixed asset deduplication content uniqueness issues - Resolved production deployment asset removal workflows - Fixed performance benchmark dict/hash type conflicts The asset management system is now production-ready with comprehensive integration test coverage validating all major workflows and edge cases. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
0794cdaa8c
commit
567f01121e
30 changed files with 4398 additions and 521 deletions
|
|
@ -309,4 +309,21 @@ class AssetDeduplicator:
|
|||
}
|
||||
|
||||
except Exception as e:
|
||||
raise DeduplicationError("Failed to list stored assets", cause=e)
|
||||
raise DeduplicationError("Failed to list stored assets", cause=e)
|
||||
|
||||
def create_link(self, stored_path: Path, link_path: Path,
|
||||
conflict_resolution: str = "backup") -> Dict[str, Any]:
|
||||
"""Create symlink or copy to stored asset (alias for create_asset_link).
|
||||
|
||||
Args:
|
||||
stored_path: Path to the stored asset.
|
||||
link_path: Desired path for the link/copy.
|
||||
conflict_resolution: How to handle existing files ("overwrite", "backup", "skip").
|
||||
|
||||
Returns:
|
||||
Dictionary with operation results.
|
||||
|
||||
Raises:
|
||||
DeduplicationError: If link creation fails.
|
||||
"""
|
||||
return self.create_asset_link(stored_path, link_path, conflict_resolution)
|
||||
Loading…
Add table
Add a link
Reference in a new issue