feat: Introduce DefaultExtractor for fallback values and refactor extraction logic in MediaExtractor

This commit is contained in:
sha
2025-12-26 19:10:49 +00:00
parent aec31bae9e
commit 2dce807984
5 changed files with 204 additions and 130 deletions
+6 -5
View File
@@ -62,11 +62,12 @@ def test_extract_frame_class(filename):
# Print filename and extracted frame class clearly
print(f"\nFilename: \033[1;36m{filename}\033[0m")
print(f"Extracted frame_class: \033[1;32m{frame_class}\033[0m")
# Frame class should be a string
assert isinstance(frame_class, str)
# Should be one of the valid frame classes or 'Unclassified'
valid_classes = set(FRAME_CLASSES.keys()) | {'Unclassified'}
assert frame_class in valid_classes
# Frame class should be a string or None
assert frame_class is None or isinstance(frame_class, str)
# Should be one of the valid frame classes or None
if frame_class is not None:
valid_classes = set(FRAME_CLASSES.keys())
assert frame_class in valid_classes
@pytest.mark.parametrize("filename", load_test_filenames())