Files
fahnen_esp32/.pio/libdeps/esp01_1m/FastLED/validate_build_system.py

58 lines
2.1 KiB
Python

#!/usr/bin/env python3
"""
Simple validation script for the unified build system.
This script tests basic functionality without requiring compilation.
"""
import tempfile
from pathlib import Path
import sys
try:
from ci.build_api import create_unit_test_builder, create_example_builder, BuildType
print("✓ Successfully imported unified build API")
# Test basic creation
with tempfile.TemporaryDirectory() as temp_dir:
temp_path = Path(temp_dir)
# Test unit builder creation
unit_builder = create_unit_test_builder(build_dir=temp_path / "unit")
print(f"✓ Unit test builder created: {unit_builder.build_type}")
# Test example builder creation
example_builder = create_example_builder(build_dir=temp_path / "examples")
print(f"✓ Example builder created: {example_builder.build_type}")
# Test build info
unit_info = unit_builder.get_build_info()
example_info = example_builder.get_build_info()
print(f"✓ Unit test build flags TOML: {Path(unit_info['build_flags_toml']).name}")
print(f"✓ Example build flags TOML: {Path(example_info['build_flags_toml']).name}")
# Test directory structure
assert unit_builder.artifacts_dir.exists()
assert unit_builder.targets_dir.exists()
assert unit_builder.cache_dir.exists()
print("✓ Directory structure created correctly")
print("\n" + "=" * 60)
print("UNIFIED BUILD SYSTEM VALIDATION SUCCESSFUL!")
print("=" * 60)
print("The new unified BuildAPI is working correctly.")
print("\nKey achievements:")
print("✓ Split build_flags.toml into build_unit.toml and build_example.toml")
print("✓ Created unified BuildAPI class")
print("✓ Implemented automatic PCH and library building")
print("✓ Organized build directory structure")
print("✓ Clean separation between unit tests and examples")
except Exception as e:
print(f"❌ Validation failed: {e}")
import traceback
traceback.print_exc()
sys.exit(1)