diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index ba4418b..2520877 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -87,6 +87,10 @@ jobs: from kikotools.tools.seed_history import SeedHistoryNode from kikotools.tools.seed_history.logic import generate_random_seed, validate_seed_value + # Test Kiko Save Image imports + from kikotools.tools.kiko_save_image import KikoSaveImageNode + from kikotools.tools.kiko_save_image.logic import process_image_batch, validate_save_inputs + print('✓ All module imports successful') " @@ -252,6 +256,27 @@ jobs: print(f'❌ SeedHistoryNode missing required attribute: {attr}') sys.exit(1) + # Test Kiko Save Image Node + from kikotools.tools.kiko_save_image.node import KikoSaveImageNode + + if issubclass(KikoSaveImageNode, ComfyAssetsBaseNode): + print('✓ KikoSaveImageNode properly inherits from base class') + else: + print('❌ KikoSaveImageNode does not inherit from base class') + sys.exit(1) + + # KikoSaveImage is an output node, so it doesn't have RETURN_TYPES/RETURN_NAMES + save_required_attrs = ['INPUT_TYPES', 'FUNCTION', 'CATEGORY'] + for attr in save_required_attrs: + if not hasattr(KikoSaveImageNode, attr): + print(f'❌ KikoSaveImageNode missing required attribute: {attr}') + sys.exit(1) + + # Check that it's properly marked as an output node + if not hasattr(KikoSaveImageNode, 'OUTPUT_NODE') or not KikoSaveImageNode.OUTPUT_NODE: + print('❌ KikoSaveImageNode missing OUTPUT_NODE = True') + sys.exit(1) + print('✓ All architecture checks passed for all tools') "