blob: f1bee5a4d2fe44b94a74fdb34c9406e8ea390159 [file] [log] [blame]
Harald Welted0519e02022-02-11 18:05:48 +01001#!/usr/bin/env python3
2
3import unittest
Harald Welte81f4b402022-02-12 10:31:27 +01004from pySim.construct import *
Harald Welted0519e02022-02-11 18:05:48 +01005
6tests = [
7 ( b'\x80', 0x80 ),
8 ( b'\x80\x01', 0x8001 ),
9 ( b'\x80\x00\x01', 0x800001 ),
10 ( b'\x80\x23\x42\x01', 0x80234201 ),
11 ]
12
13class TestGreedyInt(unittest.TestCase):
14 def test_GreedyInt_decoder(self):
15 gi = GreedyInteger()
16 for t in tests:
17 self.assertEqual(gi.parse(t[0]), t[1])
18 def test_GreedyInt_encoder(self):
19 gi = GreedyInteger()
20 for t in tests:
21 self.assertEqual(t[0], gi.build(t[1]))
22 pass
23
Harald Welte81f4b402022-02-12 10:31:27 +010024class TestUtils(unittest.TestCase):
25 def test_filter_dict(self):
26 inp = {'foo': 0xf00, '_bar' : 0xba5, 'baz': 0xba2 }
27 out = {'foo': 0xf00, 'baz': 0xba2 }
28 self.assertEqual(filter_dict(inp), out)
29
30 def test_filter_dict_nested(self):
31 inp = {'foo': 0xf00, 'nest': {'_bar' : 0xba5}, 'baz': 0xba2 }
32 out = {'foo': 0xf00, 'nest': {}, 'baz': 0xba2 }
33 self.assertEqual(filter_dict(inp), out)
34
Harald Welted0519e02022-02-11 18:05:48 +010035
36if __name__ == "__main__":
37 unittest.main()