Files
2026-04-02 12:34:21 +02:00

21 lines
890 B
Python

from src.jeb_utils.jebp_utils import unpack_fields
import pytest
@pytest.mark.parametrize('packed,expected', [
(b'', []),
(b'\x02\x00\x00', [b'']),
(b'\x01\x00', [b'']),
(b'\x01\x00\x01\x00', [b'', b'']),
(b'\x01\x00\x01\x01a', [b'', b'a']),
(b'\x01\x00\x01\x02ab', [b'', b'ab']),
(b'\x01\x01a\x01\x02ab', [b'a', b'ab']),
(b'\x01\x01a\x01\x02ab\x01\x00\x01\x0dHello, World!', [b'a', b'ab', b'', b'Hello, World!']),
(b'\x01\xff' + b'a' * 255, [b'a' * 255]),
((b'\x01\xff' + b'a' * 255) * 2, [b'a' * 255, b'a' * 255]),
(b'\x02\x01\x00' + b'a' * 256, [b'a' * 256]),
((b'\x02\x01\x00' + b'a' * 256) * 2, [b'a' * 256, b'a' * 256]),
(b'\x02\x01\x01' + b'a' * 257, [b'a' * 257]),
(b'\x02\x01\x01' + b'a' * 257 + b'\x01\x03abc', [b'a' * 257, b'abc']),
])
def test_unpack_fields(packed, expected):
assert unpack_fields(packed) == expected