# Filename: test_controlhost.py # pylint: disable=locally-disabled,C0111,R0904,R0201,C0103,W0612 """ Unit tests for the controlhost module. """ from controlhost import Tag, Message, Prefix from unittest import TestCase __author__ = "Tamas Gal" __copyright__ = "Copyright 2016, Tamas Gal and the KM3NeT collaboration." __credits__ = [] __license__ = "MIT" __maintainer__ = "Tamas Gal" __email__ = "tgal@km3net.de" __status__ = "Development" class TestTag(TestCase): def test_empty_tag_has_correct_length(self): tag = Tag() self.assertEqual(Tag.SIZE, len(tag)) def test_tag_has_correct_length(self): for tag_name in (b"foo", b"bar", b"baz", b"1"): tag = Tag(tag_name) self.assertEqual(Tag.SIZE, len(tag)) def test_tag_with_invalid_length_raises_valueerror(self): self.assertRaises(ValueError, Tag, "123456789") def test_tag_has_correct_data(self): tag = Tag(b"foo") self.assertEqual(b"foo\x00\x00\x00\x00\x00", tag.data) tag = Tag("abcdefgh") self.assertEqual("abcdefgh", tag.data) def test_tag_has_correct_string_representation(self): tag = Tag(b"foo") self.assertEqual("foo", str(tag)) class TestPrefix(TestCase): def test_init(self): Prefix(b"foo", 1) class TestMessage(TestCase): def test_init(self): Message("")