Răsfoiți Sursa

Tests: Teach Server test to wait for server exit

We expect the server to exit when its communication pipes are closed.
Close them and wait for the server to exit.  If supported by the current
version of python, kill the server if it does not exit after a few
seconds.
Brad King 9 ani în urmă
părinte
comite
d56f9237d7
1 a modificat fișierele cu 14 adăugiri și 0 ștergeri
  1. 14 0
      Tests/Server/server-test.py

+ 14 - 0
Tests/Server/server-test.py

@@ -102,4 +102,18 @@ for obj in testData:
 
     print("Completed")
 
+# Tell the server to exit.
+proc.stdin.close()
+proc.stdout.close()
+
+# Wait for the server to exit.
+# If this version of python supports it, terminate the server after a timeout.
+try:
+    proc.wait(timeout=5)
+except TypeError:
+    proc.wait()
+except:
+    proc.terminate()
+    raise
+
 sys.exit(0)