X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Funit_test.ksh;h=9ab1827b8f76f192e4a168e7a68cdbd05c84ee4d;hb=359d35e90982882267d7284e2a5ead77a28560d2;hp=9953733de106f12e6e63f66ba4adbdd19be9d4e0;hpb=7958ddfd7e5bc9278bcba939b55b5b90e83529c2;p=ric-plt%2Flib%2Frmr.git diff --git a/test/unit_test.ksh b/test/unit_test.ksh index 9953733..9ab1827 100755 --- a/test/unit_test.ksh +++ b/test/unit_test.ksh @@ -305,22 +305,24 @@ function mk_xml { # ----------------------------------------------------------------------------------------------------------------- # we assume that the project has been built in the ../[.]build directory -if [[ -d ../build/lib ]] +if [[ -d ../build ]] then - export LD_LIBRARY_PATH=../build/lib + export LD_LIBRARY_PATH=../build/lib:../build/lib64 else - if [[ -d ../.build/lib ]] + if [[ -d ../.build ]] then - export LD_LIBRARY_PATH=../.build/lib + export LD_LIBRARY_PATH=../.build/lib:../.build/lib64 export C_INCLUDE_PATH=../.build/include else - echo "[WARN] cannot find ../[.]build/lib; things might not work" + echo "[WARN] cannot find build directory (tried ../build and ../.build); things might not work" echo "" fi fi -export C_INCLUDE_PATH="../src/common/include:$C_INCLUDE_PATH" +export LIBRARY_PATH=$LD_LIBRARY_PATH + +export C_INCLUDE_PATH="../src/rmr/common/include:$C_INCLUDE_PATH" module_cov_target=80 builder="make -B %s" # default to plain ole make @@ -331,6 +333,9 @@ show_output=0 # show output from each test execution (-S) quiet=0 gen_xml=0 replace_flags=1 # replace ##### in gcov for discounted lines +run_nano_tests=0 + +export RMR_WARNING=1 # turn on warnings while [[ $1 == "-"* ]] do @@ -338,8 +343,10 @@ do -C) builder="$2"; shift;; # custom build command -G) builder="gmake %s";; -M) builder="mk -a %s";; # use plan-9 mk (better, but sadly not widly used) + -N) run_nano_tests=1;; -c) module_cov_target=$2; shift;; + -e) capture_file=$2; >$capture_file; shift;; # capture errors from failed tests rather than spewing on tty -f) force_discounting=1; trigger_discount_str="WARN|FAIL|PASS" # check all outcomes for each module ;; @@ -389,6 +396,11 @@ then do if [[ $tfile != *"static_test.c" ]] then + if(( ! run_nano_tests )) && [[ $tfile == *"nano"* ]] + then + continue + fi + flist="${flist}$tfile " fi done @@ -427,17 +439,31 @@ do add_ignored_func test_nng_em.c # the nng/nano emulated things for f in *_static_test.c # all static modules here do + if(( ! run_nano_tests )) && [[ $f == *"nano"* ]] + then + continue + fi + add_ignored_func $f done if ! ./${tfile%.c} >/tmp/PID$$.log 2>&1 then echo "[FAIL] unit test failed for: $tfile" - if (( quiet )) + if [[ -n capture_file ]] then - grep "^<" /tmp/PID$$.log # in quiet mode just dump <...> messages which are assumed from the test programme not appl + echo "all errors captured in $capture_file, listing only fail message on tty" + echo "$tfile --------------------------------------" >>$capture_file + cat /tmp/PID$$.log >>$capture_file + grep "^" /tmp/PID$$.log + echo "" else - cat /tmp/PID$$.log + if (( quiet )) + then + grep "^<" /tmp/PID$$.log|grep -v "^" # in quiet mode just dump <...> messages which are assumed from the test programme not appl + else + cat /tmp/PID$$.log + fi fi (( ut_errors++ )) # cause failure even if not in strict mode continue # skip coverage tests for this