Solaar/logitech/unifying_receiver/tests/test_10_constants.py

35 lines
897 B
Python

#
#
#
import unittest
from logitech.unifying_receiver import constants
class Test_UR_Constants(unittest.TestCase):
def test_10_feature_names(self):
self.assertIsNone(constants.FEATURE_NAME(None))
for code in range(0x0000, 0x10000):
feature = chr((code & 0xFF00) >> 8) + chr(code & 0x00FF)
name = constants.FEATURE_NAME(feature)
self.assertIsNotNone(name)
if name.startswith('UNKNOWN_'):
self.assertEquals(code, int(name[8:], 16))
else:
self.assertTrue(hasattr(constants.FEATURE, name))
self.assertEquals(feature, getattr(constants.FEATURE, name))
def test_20_error_names(self):
for code in range(0x00, 0x100):
name = constants.ERROR_NAME(code)
self.assertIsNotNone(name)
if code > 9:
self.assertEquals(name, 'Unknown Error')
else:
self.assertEquals(code, constants._ERROR_NAMES.index(name))
if __name__ == '__main__':
unittest.main()