Files
urh/tests/TestExternalDecodings.py
Dr. Johannes Pohl aa95d20b9b Blacken code (#1076)
2023-10-30 17:51:41 +01:00

616 lines
13 KiB
Python

import array
import os
import unittest
from urh import settings
from urh.signalprocessing.Encoding import Encoding
class TestExternalDecodings(unittest.TestCase):
def test_external_homematic(self):
f = os.readlink(__file__) if os.path.islink(__file__) else __file__
path = os.path.realpath(os.path.join(f, "..", ".."))
code = os.path.join(path, "data", "decodings", "homematic_complete")
e = Encoding(
[
"test external homematic",
settings.DECODING_EXTERNAL,
code + " d" + ";" + code + " e",
]
)
data = array.array(
"B",
[
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
1,
0,
1,
1,
1,
0,
0,
1,
1,
0,
1,
0,
1,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
0,
1,
1,
1,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
0,
0,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
1,
1,
0,
1,
1,
1,
1,
0,
1,
0,
1,
0,
1,
0,
0,
1,
1,
0,
1,
0,
1,
1,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
1,
1,
0,
1,
0,
0,
1,
1,
0,
0,
0,
0,
1,
1,
1,
1,
0,
0,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
1,
1,
1,
0,
1,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0,
0,
1,
1,
1,
1,
0,
1,
1,
0,
1,
1,
1,
1,
0,
0,
1,
0,
1,
1,
1,
0,
1,
0,
1,
1,
0,
1,
0,
1,
1,
1,
1,
0,
0,
1,
0,
1,
0,
1,
1,
1,
1,
],
)
decoded = e.decode(data)
self.assertEqual(
decoded,
array.array(
"B",
[
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
0,
1,
0,
0,
1,
1,
1,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
0,
0,
1,
1,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
1,
0,
0,
1,
1,
1,
0,
1,
0,
1,
1,
1,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
1,
1,
0,
1,
1,
1,
0,
1,
0,
0,
1,
0,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
1,
0,
1,
1,
0,
1,
1,
0,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
1,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
1,
1,
1,
1,
0,
0,
0,
1,
1,
0,
0,
1,
1,
0,
0,
1,
0,
0,
],
),
)
encoded = e.encode(decoded)
self.assertEqual(encoded, data)