add unit test flag

This commit is contained in:
Aryan Singh committed 2026-09-12 23:29:06 -05:00
1 parent 9899fd4741
commit 8dfc59f570
2 files changed
+20 -14

No files matched your search

+7 -3
View File
@@ -40,7 +40,7 @@ def receive_message(sock):
received_data = receive_exact(sock, message_length) received_data = receive_exact(sock, message_length)
return received_data.decode('utf-8') return received_data.decode('utf-8')
def grep_all_ips(ips, cmd): def grep_all_ips(ips, cmd, if_unit_test):
match_count = [] match_count = []
for i, ip in enumerate(ips): for i, ip in enumerate(ips):
@@ -48,6 +48,9 @@ def grep_all_ips(ips, cmd):
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect((ip, PORT)) client_socket.connect((ip, PORT))
if if_unit_test:
full_cmd = cmd + f" ./machine.{i + 1}.test.log"
else:
full_cmd = cmd + f" ./machine.{i + 1}.log" full_cmd = cmd + f" ./machine.{i + 1}.log"
send_message(client_socket, full_cmd) send_message(client_socket, full_cmd)
@@ -69,8 +72,9 @@ def grep_all_ips(ips, cmd):
return match_count return match_count
#main #main
cmd = "grep " + " ".join(sys.argv[1:]) #if unit test flag exists, then use the test log files instead of the actual log files
match_count = grep_all_ips(ALL_IPS, cmd) cmd = "grep " + " ".join([arg for arg in sys.argv[1:] if arg != "-t"])
match_count = grep_all_ips(ALL_IPS, cmd, if_unit_test=[x for x in sys.argv].count("-t") > 0)
print("=========================== SUMMARY ===========================") print("=========================== SUMMARY ===========================")
for i, count in enumerate(match_count): for i, count in enumerate(match_count):
+13 -11
View File
@@ -19,20 +19,22 @@ ALL_IPS = [
#generate log files on all the machines before running this test #generate log files on all the machines before running this test
print("Generating log files on all machines...") print("Generating log files on all machines...")
for i, ip in enumerate(ALL_IPS): for i, ip in enumerate(ALL_IPS):
subprocess.run(["vpn", "ssh", f"asing271@{ip}", "cd ~/fa26_cs425_.group-mp_.team-01/MP1 && python3 generate_log.py {i + 1} 100"]) subprocess.run(["vpn", "ssh", f"asing271@{ip}", f"cd ~/fa26_cs425_.group-mp_.team-01/MP1 && python3 generate_log.py {i + 1} 100"])
#start the server on all the machines before running this test #start the server on all the machines before running this test
print("Starting server on all machines...") # print("Starting server on all machines...")
for i, ip in enumerate(ALL_IPS): # for i, ip in enumerate(ALL_IPS):
subprocess.run(["vpn", "ssh", f"asing271@{ip}", "cd ~/fa26_cs425_.group-mp_.team-01/MP1 && python3 server.py &"]) # print(f"Starting server on machine {i + 1} ({ip})...")
# subprocess.run([
# "vpn", "ssh", f"asing271@{ip}", "cd ~/fa26_cs425_.group-mp_.team-01/MP1 && setsid -f python3 server.py > server.log 2>&1 < /dev/null"])
#ssh into one machine at randome #ssh into one machine at randome
print("Running grep command on a random machine...") # print("Running grep command on a random machine...")
machine_num = random.randint(1, len(ALL_IPS)) # machine_num = random.randint(1, len(ALL_IPS))
result = subprocess.run(["vpn", "ssh", f"asing271@{ALL_IPS[machine_num - 1]}", "cd ~/fa26_cs425_.group-mp_.team-01/MP1 && grep 'ERROR' f'./machine.{machine_num}.test.log'"], capture_output=True, text=True) # result = subprocess.run(["vpn", "ssh", f"asing271@{ALL_IPS[machine_num - 1]}", f"cd ~/fa26_cs425_.group-mp_.team-01/MP1 && grepp 'ERROR' f'./machine.{machine_num}.test.log'"], capture_output=True, text=True)
print(f"Machine {machine_num} grep result:\n{result.stdout}") # print(f"Machine {machine_num} grep result:\n{result.stdout}")
#delete log files on all the machines after running this test #delete log files on all the machines after running this test
print("Deleting log files on all machines...") # print("Deleting log files on all machines...")
for i, ip in enumerate(ALL_IPS): # for i, ip in enumerate(ALL_IPS):
subprocess.run(["vpn", "ssh", f"asing271@{ip}", "cd ~/fa26_cs425_.group-mp_.team-01/MP1 && rm -f ./machine.*.test.log"]) # subprocess.run(["vpn", "ssh", f"asing271@{ip}", "cd ~/fa26_cs425_.group-mp_.team-01/MP1 && rm -f ./machine.*.test.log"])