# Test Data Directory This directory contains test data files used by the Flamenco test suite. ## Structure ``` test-data/ ├── blender-files/ # Test Blender scenes │ ├── simple.blend # Basic cube scene for quick tests │ ├── animation.blend # Simple animation for workflow tests │ └── complex.blend # Complex scene for performance tests ├── assets/ # Test assets and textures │ ├── textures/ │ └── models/ ├── renders/ # Expected render outputs │ ├── reference/ # Reference images for comparison │ └── outputs/ # Test render outputs (generated) └── configs/ # Test configuration files ├── job-templates/ # Job template definitions └── worker-configs/ # Worker configuration examples ``` ## Usage Test data is automatically copied to the shared storage volume when running tests with Docker Compose. The test suite references these files using paths relative to `/shared-storage/`. ## Adding Test Data 1. Add your test files to the appropriate subdirectory 2. Update test cases to reference the new files 3. For Blender files, keep them minimal to reduce repository size 4. Include documentation for complex test scenarios ## File Descriptions ### Blender Files - `simple.blend`: Single cube, 10 frames, minimal geometry (< 1MB) - `animation.blend`: Bouncing ball animation, 120 frames (< 5MB) - `complex.blend`: Multi-object scene with materials and lighting (< 20MB) ### Expected Outputs Reference renders are stored as PNG files with consistent naming: - `simple_frame_001.png` - Expected output for frame 1 of simple.blend - `animation_frame_030.png` - Expected output for frame 30 of animation.blend ### Configurations Job templates define common rendering scenarios: - `basic-render.json` - Standard single-frame render - `animation-render.json` - Multi-frame animation render - `high-quality.json` - High-resolution, high-sample render ## File Size Guidelines - Keep individual files under 50MB - Total test data should be under 200MB - Use Git LFS for binary files over 10MB - Compress Blender files when possible ## Maintenance - Clean up unused test files regularly - Update reference outputs when render engine changes - Verify test data integrity with checksums - Document any special requirements for test files