Files
detections/tests/test_ai_config_from_dict.py
T
Roman Meshko c9aeed3dd9
ci/woodpecker/push/02-build-push Pipeline was successful
ci/woodpecker/manual/02-build-push Pipeline was successful
ci/woodpecker/manual/01-test Pipeline failed
Added camera config
2026-05-15 09:31:23 +03:00

62 lines
1.6 KiB
Python

def test_ai_config_from_dict_defaults():
# Arrange
from inference import ai_config_from_dict
# Act
cfg = ai_config_from_dict({})
# Assert
assert cfg.model_batch_size == 8
assert cfg.frame_period_recognition == 4
assert cfg.frame_recognition_seconds == 2
assert cfg.has_camera_config is False
assert cfg.has_altitude is False
def test_ai_config_from_dict_altitude_override_sets_flag():
# Arrange
from inference import ai_config_from_dict
# Act
cfg = ai_config_from_dict({"altitude": 400})
# Assert
assert cfg.has_camera_config is True
assert cfg.has_altitude is True
assert cfg.altitude == 400
assert cfg.current_height == 400
def test_ai_config_from_dict_overrides():
# Arrange
from inference import ai_config_from_dict
# Act
cfg = ai_config_from_dict({"model_batch_size": 4, "probability_threshold": 0.5})
# Assert
assert cfg.model_batch_size == 4
assert cfg.probability_threshold == 0.5
def test_ai_config_from_dict_camera_config_sets_physical_filter_fields():
# Arrange
from inference import ai_config_from_dict
# Act
cfg = ai_config_from_dict(
{
"camera_config": {
"focal_length": 35,
"sensor_width": 36,
"current_zoom": 2,
"current_angle": 80,
"current_height": 300,
}
}
)
# Assert
assert cfg.has_camera_config is True
assert cfg.current_height == 300
assert cfg.focal_length == 35
assert cfg.sensor_width == 36
assert cfg.current_zoom == 2
assert cfg.current_angle == 80