File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change
1
+ from uasyncio import get_event_loop , open_connection , start_server , sleep_ms
2
+ from unittest import main , TestCase
3
+
4
+ class EchoTestCase (TestCase ):
5
+
6
+ def test_client_server (self ):
7
+ '''Simple client-server echo test'''
8
+ sockaddr = ('127.0.0.1' , 8080 )
9
+ l = get_event_loop ()
10
+
11
+ async def echo_server (reader , writer ):
12
+ data = await reader .readline ()
13
+ await writer .awrite (data )
14
+ await writer .aclose ()
15
+
16
+ async def echo_client (line , result ):
17
+ await sleep_ms (10 ) # Allow server to get up
18
+ reader , writer = await open_connection (* sockaddr )
19
+ await writer .awrite (line )
20
+ data = await reader .readline ()
21
+ await writer .aclose ()
22
+ result .append (data ) # capture response
23
+
24
+ result = []
25
+ l .create_task (start_server (echo_server , * sockaddr ))
26
+ l .run_until_complete (echo_client (b'Hello\r \n ' , result ))
27
+
28
+ self .assertEqual (result [0 ], b'Hello\r \n ' )
29
+
30
+
31
+ if __name__ == '__main__' :
32
+ main ()
You can’t perform that action at this time.
0 commit comments