diff --git a/subprojects/ncsid/test/test_lib.sh b/subprojects/ncsid/test/test_lib.sh
index 53db560..694e47b 100644
--- a/subprojects/ncsid/test/test_lib.sh
+++ b/subprojects/ncsid/test/test_lib.sh
@@ -14,34 +14,34 @@
 # limitations under the License.
 
 # Compares two strings and prints out an error message if they are not equal
-StrEq() {
-  if [ "$1" != "$2" ]; then
-    echo "${BASH_SOURCE[1]}:${BASH_LINENO[0]} Mismatched strings" >&2
-    echo "  Expected: $2" >&2
-    echo "  Got:      $1" >&2
-    exit 1
-  fi
+function StrEq() {
+    if [ "$1" != "$2" ]; then
+        echo "${BASH_SOURCE[1]}:${BASH_LINENO[0]} Mismatched strings" >&2
+        echo "  Expected: $2" >&2
+        echo "  Got:      $1" >&2
+        exit 1
+    fi
 }
 
 TESTS=()
 
 # Runs tests and emits output specified by the Test Anything Protocol
 # https://testanything.org/
-TestAnythingMain() {
-  set -o nounset
-  set -o errexit
-  set -o pipefail
+function TestAnythingMain() {
+    set -o nounset
+    set -o errexit
+    set -o pipefail
 
-  echo "TAP version 13"
-  echo "1..${#TESTS[@]}"
+    echo "TAP version 13"
+    echo "1..${#TESTS[@]}"
 
-  local i
-  for ((i=0; i <${#TESTS[@]}; ++i)); do
-    local t="${TESTS[i]}"
-    local tap_i=$((i + 1))
-    if ! "$t"; then
-      printf "not "
-    fi
-    printf "ok %d - %s\n" "$tap_i" "$t"
-  done
+    local i
+    for ((i=0; i <${#TESTS[@]}; ++i)); do
+        local t="${TESTS[i]}"
+        local tap_i=$((i + 1))
+        if ! "$t"; then
+            printf "not "
+        fi
+        printf "ok %d - %s\n" "$tap_i" "$t"
+    done
 }
