new tests folder
This commit is contained in:
40
pytmtc/tests/server-test.py
Executable file
40
pytmtc/tests/server-test.py
Executable file
@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import socket
|
||||
from spacepackets.ecss.tc import PusTelecommand
|
||||
|
||||
|
||||
EXP_ID = 278
|
||||
APID = 1024 + EXP_ID
|
||||
SEND_PING_ONCE = True
|
||||
|
||||
|
||||
def main():
|
||||
global SEND_PING_ONCE
|
||||
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
server_addr = ("localhost", 4096)
|
||||
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
||||
server_socket.bind(server_addr)
|
||||
while True:
|
||||
server_socket.listen()
|
||||
(conn_socket, conn_addr) = server_socket.accept()
|
||||
print("TCP client {} connected", conn_addr)
|
||||
while True:
|
||||
bytes_recvd = conn_socket.recv(4096)
|
||||
if len(bytes_recvd) > 0:
|
||||
print(f"Received bytes from TCP client: {bytes_recvd.decode()}")
|
||||
elif len(bytes_recvd) == 0:
|
||||
break
|
||||
else:
|
||||
print("error receiving data from TCP client")
|
||||
if SEND_PING_ONCE:
|
||||
print("sending back ping")
|
||||
ping_tc = PusTelecommand(service=17, subservice=1, seq_count=0, apid=APID)
|
||||
conn_socket.sendall(ping_tc.pack())
|
||||
SEND_PING_ONCE = False
|
||||
conn_socket.close()
|
||||
continue
|
||||
# server_socket.close()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Reference in New Issue
Block a user