"""Roku BIF v0 的有界索引与 JPEG 随机读取。""" from io import BytesIO from pathlib import Path import struct import tempfile import unittest from unittest import mock from PIL import Image from peach import bif class BifTests(unittest.TestCase): def setUp(self): temporary = tempfile.TemporaryDirectory() self.addCleanup(temporary.cleanup) self.path = Path(temporary.name).resolve() / "预览.bif" self.images = [] for color in ("red", "blue", "green"): with BytesIO() as output: Image.new("RGB", (8, 8), color).save(output, "JPEG") self.images.append(output.getvalue()) def write_bif(self, *, timestamps=(0, 3, 11), multiplier=1000, padding=b"", images=None): images = self.images if images is None else images header = b"\x89BIF\r\n\x1a\n" + struct.pack("