X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Funit_test.ksh;h=8b21feec36437f697b8be9d65cb61500ce91c905;hb=77406e61f2158f5b88b7a9f6e3e86d8f62c8f71a;hp=7b5d6a8e084240b80315e4307125cf486fb72ea7;hpb=69e742d1b1c2c29c8cc2a8f54df2dbe91a7f08aa;p=ric-plt%2Flib%2Frmr.git diff --git a/test/unit_test.ksh b/test/unit_test.ksh index 7b5d6a8..8b21fee 100755 --- a/test/unit_test.ksh +++ b/test/unit_test.ksh @@ -333,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 @@ -340,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 ;; @@ -391,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 @@ -429,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