summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Liechti <cliechti@gmx.net>2016-09-09 00:38:46 +0200
committerChris Liechti <cliechti@gmx.net>2016-09-09 00:38:46 +0200
commit686abf500c419f11d0a4c07ac17628efeabd5693 (patch)
treed6db04433e6ec8df7911fe3a59eb31ce6fc9a2a8
parent790be842b1c2e752210d5328dad05acb05d337bb (diff)
downloadpyserial-git-686abf500c419f11d0a4c07ac17628efeabd5693.tar.gz
tests: extend tests for serial.threaded
-rw-r--r--test/test_threaded.py27
1 files changed, 26 insertions, 1 deletions
diff --git a/test/test_threaded.py b/test/test_threaded.py
index 90ccb85..333a5c0 100644
--- a/test/test_threaded.py
+++ b/test/test_threaded.py
@@ -35,8 +35,33 @@ class Test_asyncio(unittest.TestCase):
ser = serial.serial_for_url(PORT, baudrate=115200, timeout=1)
with serial.threaded.ReaderThread(ser, TestLines) as protocol:
protocol.write_line('hello')
+ protocol.write_line('world')
time.sleep(1)
- self.assertEqual(protocol.received_lines, ['hello'])
+ self.assertEqual(protocol.received_lines, ['hello', 'world'])
+
+ def test_framed_packet(self):
+ """simple test of line reader class"""
+
+ class TestFramedPacket(serial.threaded.FramedPacket):
+ def __init__(self):
+ super(TestFramedPacket, self).__init__()
+ self.received_packets = []
+
+ def handle_packet(self, packet):
+ self.received_packets.append(packet)
+
+ def send_packet(self, packet):
+ self.transport.write(self.START)
+ self.transport.write(packet)
+ self.transport.write(self.STOP)
+
+ ser = serial.serial_for_url(PORT, baudrate=115200, timeout=1)
+ with serial.threaded.ReaderThread(ser, TestFramedPacket) as protocol:
+ protocol.send_packet(b'1')
+ protocol.send_packet(b'2')
+ protocol.send_packet(b'3')
+ time.sleep(1)
+ self.assertEqual(protocol.received_packets, [b'1', b'2', b'3'])
if __name__ == '__main__':