From 0fb8990b502398a1d2316cb9a67bdf4bb0bde7ee Mon Sep 17 00:00:00 2001
From: John Hodge <tpg@ucc.asn.au>
Date: Sun, 19 Sep 2021 14:47:27 +0800
Subject: [PATCH] Gitlab CI - Fix tests (using `nc`)

---
 .gitlab-ci.yml   | 4 ++--
 tests/_common.sh | 9 +++++++--
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 18b003c..bbfd057 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,14 +9,14 @@ build:
   # instead of calling g++ directly you can also use some build toolkit like make
   # install the necessary build tools when needed
   before_script:
-    - apt update && apt -y install libncurses-dev libmodbus-dev libsqlite3-dev libident-dev
+    - apt update && apt -y install libncurses-dev libmodbus-dev libsqlite3-dev libident-dev netcat
   script:
     - make -C src/
   artifacts:
     paths:
       - dispense
       - cokebank_sqlite.so
-      - dispsrc
+      - dispsrv
       # depending on your build setup it's most likely a good idea to cache outputs to reduce the build time
       # cache:
       #   paths:
diff --git a/tests/_common.sh b/tests/_common.sh
index 4058bb5..cb31ac7 100644
--- a/tests/_common.sh
+++ b/tests/_common.sh
@@ -46,10 +46,15 @@ server_pid=$!
 
 cleanup() {
 	LOG "Killing ${server_pid}"
-	kill ${server_pid}
+	kill ${server_pid}; true
 }
 trap cleanup EXIT
 
 LOG "Server running on PID ${server_pid}"
 sleep 1
-echo "" | nc localhost ${PORT}
+# - Make sure that the server started
+if ! (echo "" | nc localhost ${PORT}); then
+	LOG "Server not responding on ${PORT}"
+	LOG "Server log contents:"
+	cat ${BASEDIR}server.log
+fi
-- 
GitLab