summaryrefslogtreecommitdiff
path: root/test-cli/test/tests/qserial.py
diff options
context:
space:
mode:
authorManel Caro <mcaro@iseebcn.com>2019-03-09 21:25:56 +0100
committerManel Caro <mcaro@iseebcn.com>2019-03-09 21:25:56 +0100
commit9332c933fc05f42882640c9a4e35fab09854af84 (patch)
tree2b9b00b5a411b27f9705603c0d93b8925afd4677 /test-cli/test/tests/qserial.py
downloadboard-9332c933fc05f42882640c9a4e35fab09854af84.zip
board-9332c933fc05f42882640c9a4e35fab09854af84.tar.gz
board-9332c933fc05f42882640c9a4e35fab09854af84.tar.bz2
Board: Client Test Suite Initial Commit
Diffstat (limited to 'test-cli/test/tests/qserial.py')
-rw-r--r--test-cli/test/tests/qserial.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/test-cli/test/tests/qserial.py b/test-cli/test/tests/qserial.py
new file mode 100644
index 0000000..43ba3c8
--- /dev/null
+++ b/test-cli/test/tests/qserial.py
@@ -0,0 +1,30 @@
+from test.helpers.syscmd import SysCommand
+import unittest
+import uuid
+import serial
+import time
+
+class Qserial(unittest.TestCase):
+
+ def __init__(self, testname, testfunc, port, baudrate):
+ super(Qserial, self).__init__(testfunc)
+ self.__port = port
+ self.__serial = serial.Serial(self.__port, timeout=1)
+ self.__serial.baudrate = baudrate
+ self._testMethodDoc = testname
+
+ def __del__(self):
+ self.__serial.close()
+
+ def execute(self):
+ self.__serial.flushInput()
+ self.__serial.flushOutput()
+ test_uuid = str(uuid.uuid4()).encode()
+ self.__serial.write(test_uuid)
+ time.sleep(0.05) # there might be a small delay
+ if self.__serial.inWaiting() == 0:
+ self.fail("failed: PORT {} wait timeout exceded, wrong communication?".format(self.__port))
+ else:
+ if (self.__serial.readline() != test_uuid):
+ self.fail("failed: PORT {} write/read mismatch".format(self.__port))
+