Files
StableLlama-ComfyUI-basic_d…/tests/test_dynamic_input.py
T
2026-03-26 23:10:28 +01:00

42 lines
1.1 KiB
Python

import pytest
from src.basic_data_handling._dynamic_input import ContainsDynamicDict
def test_contains_dynamic_dict_basic_lookup():
d = ContainsDynamicDict({
'value': ('x', {'_dynamic': 'number'}),
'fixed': 'y',
})
# direct behavior
assert 'value' in d
assert d['value'] == ('x', {'_dynamic': 'number'})
# dynamic numeric key lookup
assert 'value1' in d
assert d['value1'] == ('x', {'_dynamic': 'number'})
assert 'value999' in d
assert d['value999'] == ('x', {'_dynamic': 'number'})
# non-dynamic key and fallback
assert 'fixed' in d
assert d['fixed'] == 'y'
# non-matching key should not be present
assert 'novalue' not in d
with pytest.raises(KeyError):
_ = d['novalue']
def test_contains_dynamic_dict_partial_prefix_not_numeric():
d = ContainsDynamicDict({'val': ('z', {'_dynamic': 'number'})})
assert 'val' in d
assert d['val'] == ('z', {'_dynamic': 'number'})
assert 'val1' in d
assert d['val1'] == ('z', {'_dynamic': 'number'})
assert 'valx' not in d
with pytest.raises(KeyError):
_ = d['valx']