Add support for config file parsing and watching

This change introduces the ability to load and parse
the json xapp descriptor (config) file. It also provides
the ability for the xAPP to register a callback function
which is executed when the descriptor is changed.

Issue-ID: RIC-428

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I7a1147aa8055599ef4b36ab17960e32ccb5b741f
diff --git a/test/unit_test.sh b/test/unit_test.sh
index 3e06a53..c845553 100755
--- a/test/unit_test.sh
+++ b/test/unit_test.sh
@@ -1,6 +1,5 @@
 #!/usr/bin/env bash
 # vim: ts=4 sw=4 noet:
-
 #==================================================================================
 #       Copyright (c) 2020 Nokia
 #       Copyright (c) 2020 AT&T Intellectual Property.
@@ -99,6 +98,8 @@
 export LD_LIBRARY_PATH=$build_dir:/usr/local/lib:$LD_LIBRARY_PATH
 export LIBRARY_PATH=$build_dir:/usr/local/lib:$LIBRARY_PATH
 
+cp config1.json config-file.json						# ensure default named file is there too
+
 make nuke >/dev/null
 make tests >/tmp/PID$$.log 2>&1
 abort_if_error $? "unable to make"
@@ -106,10 +107,18 @@
 
 spew="cat"
 
-for x in unit_test jhash_test metrics_test
+#run everything, then generate coverage stats after all have run
+for x in metrics_test jhash_test config_test  unit_test
 do
 	./$x >/tmp/PID$$.log 2>&1
 	abort_if_error $? "test failed: $x"
+done
+
+# it seems that we loose coverage reporting if metrics_test's gcov file is generated
+# after unit test.  Very strange. To be safe, run unit_test last.
+#
+for x in metrics_test jhash_test config_test unit_test
+do
 	gcov $x.c >/dev/null 2>&1
 done