From 1e72bc853e093feded07ac60d492f9865a843a05 Mon Sep 17 00:00:00 2001
From: "Robin.Mueller" <robin.mueller.m@gmail.com>
Date: Fri, 13 Mar 2020 00:08:52 +0100
Subject: [PATCH] some fixes

---
 OBSW_TmTcClient.py             |  3 +--
 config/OBSW_Config.py          | 15 +++++++++++++--
 sendreceive/OBSW_TmListener.py |  4 ++--
 tc/OBSW_TcPacker.py            |  8 ++------
 tc/OBSW_TcPacket.py            |  5 ++++-
 test/OBSW_UnitTest.py          |  2 +-
 6 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/OBSW_TmTcClient.py b/OBSW_TmTcClient.py
index 13c98cb..a1c9c90 100644
--- a/OBSW_TmTcClient.py
+++ b/OBSW_TmTcClient.py
@@ -168,8 +168,7 @@ def setCommunicationInterface(tmtcPrinter: TmTcPrinterT) -> ComIF_T:
             communicationInterface = SerialComIF(tmtcPrinter=tmtcPrinter, comPort=comPort, baudRate=baudRate,
                                                  serialTimeout=g.serialTimeout)
         else:
-            print("Could not set up communication interface !")
-            exit()
+            pass
         return communicationInterface
     except (IOError, OSError):
         print("Error setting up communication interface")
diff --git a/config/OBSW_Config.py b/config/OBSW_Config.py
index d4f1ca6..4088c26 100644
--- a/config/OBSW_Config.py
+++ b/config/OBSW_Config.py
@@ -13,7 +13,7 @@ from typing import Tuple, TypeVar
 Global type definitions
 """
 ethernetAddressT = Tuple[str, int]
-socketType = TypeVar['socketType']
+# socketType = TypeVar['socketType']
 
 
 # Mode options, set by args parser
@@ -89,7 +89,18 @@ def setGlobals(args):
     portSend = 7
     sendAddressToSet = (args.boardIP, portSend)
     if 0 <= args.mode <= 5:
-        modeId = modeList[args.mode]
+        if args.mode == 0:
+           modeId = modeList.GUIMode
+        elif args.mode == 1:
+            modeId = modeList.ListenerMode
+        elif args.mode == 2:
+            modeId = modeList.SingleCommandMode
+        elif args.mode == 3:
+            modeId = modeList.ServiceTestMode
+        elif args.mode == 4:
+            modeId = modeList.SoftwareTestMode
+        elif args.mode == 5:
+            modeId = modeList.UnitTest
     else:
         print("Invalid mode argument, setting default mode (1)")
         modeId = modeList[1]
diff --git a/sendreceive/OBSW_TmListener.py b/sendreceive/OBSW_TmListener.py
index 01848bb..22e356a 100644
--- a/sendreceive/OBSW_TmListener.py
+++ b/sendreceive/OBSW_TmListener.py
@@ -31,7 +31,7 @@ class TmListener:
         self.tcTimeoutFactor = tcTimeoutFactor
         self.comInterface = comInterface
         # this will be the default mode (listener mode)
-        self.modeId = g.modeList[1]
+        self.modeId = g.modeList.ListenerMode
         self.listenerActive = threading.Event()  # TM Listener operations can be suspended by setting this flag
         self.listenerActive.set()
         # I don't think a listener is useful without the main program, so we might just declare it daemonic.
@@ -67,7 +67,7 @@ class TmListener:
             self.modeChangeEvent.clear()
             while not self.modeOpFinished.is_set():
                 self.performModeOperation()
-            self.modeId = g.modeList[1]
+            self.modeId = g.modeList.ListenerMode
 
     def performModeOperation(self):
         """
diff --git a/tc/OBSW_TcPacker.py b/tc/OBSW_TcPacker.py
index 5f11e00..5270ff6 100644
--- a/tc/OBSW_TcPacker.py
+++ b/tc/OBSW_TcPacker.py
@@ -13,7 +13,7 @@ Run script with -s <Service or Device> -m 3 with optional -p parameter for file
 """
 import os
 
-from tc.OBSW_TcPacket import PUSTelecommand, pusTcTupleT
+from tc.OBSW_TcPacket import PUSTelecommand, tcQueueT
 from tc.OBSW_TcService2 import packService2TestInto
 from tc.OBSW_TcService3 import packService3TestInto
 from tc.OBSW_TcService8 import packService8TestInto
@@ -21,11 +21,7 @@ from tc.OBSW_TcService200 import packModeData, packService200TestInto
 import config.OBSW_Config as g
 from datetime import datetime
 from collections import deque
-from typing import Deque, Union, Tuple
-
-tcAuxiliaryTupleT = Tuple[str, any]
-# Union: Type can be either of those 2
-tcQueueT = Deque[Union[tcAuxiliaryTupleT, pusTcTupleT]]
+from typing import Union
 
 
 def serviceTestSelect(service: Union[int, str], serviceQueue: tcQueueT) -> tcQueueT:
diff --git a/tc/OBSW_TcPacket.py b/tc/OBSW_TcPacket.py
index bfa6e5a..cc810d8 100644
--- a/tc/OBSW_TcPacket.py
+++ b/tc/OBSW_TcPacket.py
@@ -7,11 +7,14 @@ Created on Wed Apr  4 11:43:00 2018
 
 import crcmod
 import logging
-from typing import TypeVar, Dict, Tuple, Union
+from typing import TypeVar, Dict, Union, Tuple, Deque
 
 PusTcT = TypeVar('PusTcT', bound='PUSTelecommand')
 pusTcInfoT = Union[Dict[str, any], None]
 pusTcTupleT = Tuple[pusTcInfoT, bytearray]
+tcAuxiliaryTupleT = Tuple[str, any]
+# Union: Type can be either of those 2
+tcQueueT = Deque[Union[tcAuxiliaryTupleT, pusTcTupleT]]
 
 
 class PUSTelecommand:
diff --git a/test/OBSW_UnitTest.py b/test/OBSW_UnitTest.py
index 06cfb97..fbbdc7e 100644
--- a/test/OBSW_UnitTest.py
+++ b/test/OBSW_UnitTest.py
@@ -74,7 +74,7 @@ class TestService(unittest.TestCase):
         cls.communicationInterface = None
         if g.comIF == 0:
             cls.communicationInterface = EthernetComIF(
-                tmtcPrinter=cls.tmtcPrinter,tmTimeout=g.tmTimeout, tcTimeoutFactor=g.tcSendTimeoutFactor,
+                tmtcPrinter=cls.tmtcPrinter, tmTimeout=g.tmTimeout, tcTimeoutFactor=g.tcSendTimeoutFactor,
                 sendAddress=g.sendAddress, receiveAddress=g.recAddress)
         else:
             baudRate = 115200
-- 
GitLab