kumquat-buildroot/support/testing/tests/package/sample_python_avro.py
Titouan Christophe 9fa2add810 support/testing: add test for python-avro
This adds a test case for python-avro, with a script that
performs a simple deserialization.

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2019-12-29 21:38:33 +01:00

24 lines
581 B
Python

from io import BytesIO
from avro.schema import Parse
from avro.io import DatumReader, BinaryDecoder
schema = Parse("""{
"namespace": "org.buildroot.package.python_avro",
"type": "record",
"name": "Developer",
"fields": [
{"name": "email", "type": "string"},
{"name": "maintainer_of", "type": "string"}
]
}""")
example = b'<titouan.christophe@railnova.eu\x16python_avro'
reader = DatumReader(schema)
deserialized = reader.read(BinaryDecoder(BytesIO(example)))
assert deserialized == {
'email': 'titouan.christophe@railnova.eu',
'maintainer_of': 'python_avro',
}