from __future__ import annotations from pathlib import Path import sys import unittest SRC_ROOT = Path(__file__).resolve().parents[2] / "src" if str(SRC_ROOT) not in sys.path: sys.path.insert(0, str(SRC_ROOT)) from ffx.attachment_format import AttachmentFormat # noqa: E402 from ffx.track_codec import TrackCodec # noqa: E402 from ffx.track_descriptor import TrackDescriptor # noqa: E402 from ffx.track_type import TrackType # noqa: E402 class TrackDescriptorProbeTests(unittest.TestCase): def test_attachment_without_codec_name_uses_font_metadata_to_identify_ttf(self): descriptor = TrackDescriptor.fromFfprobe( { "index": 4, "codec_type": "attachment", "disposition": {"default": 0}, "tags": { "filename": "AmazonEmberTanuki-Italic.ttf", "mimetype": "font/ttf", }, }, subIndex=0, ) self.assertIsNotNone(descriptor) self.assertEqual(TrackType.ATTACHMENT, descriptor.getType()) self.assertEqual(AttachmentFormat.TTF, descriptor.getAttachmentFormat()) self.assertEqual(AttachmentFormat.TTF, descriptor.getFormatDescriptor()) self.assertEqual(TrackCodec.UNKNOWN, descriptor.getCodec()) def test_attachment_without_codec_name_still_probes_as_unknown_when_not_font(self): descriptor = TrackDescriptor.fromFfprobe( { "index": 9, "codec_type": "attachment", "disposition": {"default": 0}, "tags": { "filename": "cover.bin", "mimetype": "application/octet-stream", }, }, subIndex=0, ) self.assertIsNotNone(descriptor) self.assertEqual(TrackType.ATTACHMENT, descriptor.getType()) self.assertEqual(AttachmentFormat.UNKNOWN, descriptor.getAttachmentFormat()) self.assertEqual(TrackCodec.UNKNOWN, descriptor.getCodec()) if __name__ == "__main__": unittest.main()