Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
from unittest import TestCase
from sohstationviewer.view.util.functions import (
get_soh_messages_for_view, log_str)
from sohstationviewer.view.util.enums import LogType
class TestGetSOHMessageForView(TestCase):
def test_no_or_empty_textlog(self):
soh_msg_channels = {"ACE": ["test1\ntest2", "test3"],
"LOG": ["test4"]}
soh_msg_for_view = {'ACE': ['test1', 'test2', 'test3'],
'LOG': ['test4']}
with self.subTest('test_no_TEXT_str_dataset_key'):
soh_messages = {"key1": soh_msg_channels}
ret = get_soh_messages_for_view("key1", soh_messages)
self.assertNotIn('TEXT', list(ret.keys()))
self.assertEqual(ret, soh_msg_for_view)
with self.subTest('test_empty_TEXT_tupple_dataset_key'):
soh_messages = {"TEXT": [], ("key1", "key2"): soh_msg_channels}
ret = get_soh_messages_for_view(("key1", "key2"), soh_messages)
self.assertNotIn('TEXT', list(ret.keys()))
self.assertEqual(ret, soh_msg_for_view)
# no key "TEXT", dataset has no channels
with self.subTest('test_no_TEXT_no_SOH_channels_for_dataset'):
soh_messages = {"key1": {}}
ret = get_soh_messages_for_view("key1", soh_messages)
self.assertEqual(ret, {})
def test_some_empty_soh_message(self):
soh_messages = {"TEXT": ['text1', 'text2\ntext3'],
"key1": {"ACE": ["test1\ntest2", "test3"],
"LOG": []}}
# channel LOG is empty
ret = get_soh_messages_for_view("key1", soh_messages)
self.assertEqual(ret,
{'TEXT': ['text1', 'text2', 'text3'],
'ACE': ['test1', 'test2', 'test3'],
'LOG': []})
class TestLogStr(TestCase):
def test_log_str(self):
log = ('info line 1', LogType.INFO)
ret = log_str(log)
self.assertEqual(ret, 'INFO: info line 1')