]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
capture more information from unit tests
authorEvan Hunt <each@isc.org>
Fri, 9 Mar 2018 00:53:16 +0000 (16:53 -0800)
committerEvan Hunt <each@isc.org>
Fri, 9 Mar 2018 17:13:11 +0000 (09:13 -0800)
- in unittest step, explicitly preserve kyua.log or atf.out
- preserve kyua results database if present
- generate HTML report from kyua results if available

.gitignore
.gitlab-ci.yml
unit/unittest.sh.in

index ac40c4795ed1a381fa09d698a541c6f9e5b39c8d..5359c1eb3efb521dd199fdd4301a8d8370ccf9c4 100644 (file)
@@ -21,9 +21,10 @@ ans.run
 named.run
 named.memstats
 gen.dSYM/
-.libs/
+.ccache/
 .deps/
 .dirstamp
+.libs/
 unit/atf-src/atf-c++/atf-c++.pc
 unit/atf-src/atf-c/atf-c.pc
 unit/atf-src/atf-c/defs.h
index 34c39b5b11003649a2f89a364a2225bd499ebeca..9c14d9960eec2f75d4bbc92543df711145c93b4c 100644 (file)
@@ -97,6 +97,7 @@ stages:
 .system_test: &system_test_job
   stage: test
   before_script:
+    - rm -rf .ccache
     - bash -x bin/tests/system/ifconfig.sh up
   script:
     - cd bin/tests && make -j${TEST_PARALLEL_JOBS:-1} -k test V=1
@@ -107,10 +108,18 @@ stages:
 
 .unit_test: &unit_test_job
   stage: test
+  before_script:
+    - export KYUA_RESULT="$CI_PROJECT_DIR/kyua.results"
   script:
     - make unit
+  after_script:
+    - kyua report-html --force --results-file kyua.results --results-filter "" --output kyua_html
   artifacts:
-    untracked: true
+    paths:
+    - atf.out
+    - kyua.log
+    - kyua.results
+    - kyua_html/
     expire_in: '1 week'
     when: on_failure
 
index 2ddbdb77039da2405a871fa84c804e18c11658bd..bcbb89394eed53c8aedcd4446d1ba788ca20ad7d 100755 (executable)
@@ -10,7 +10,7 @@ if [ -n "@UNITTESTS@" -a -x "$ATFRUN" -a -f Atffile ]
 then
        echo "S:unit:`date`"
        echo "T:unit:1:A"
-       echo "I: unit tests"
+       echo "I: unit tests (using atf-run)"
        atf-run > atf.out
        status=$?
 
@@ -29,11 +29,11 @@ elif [ -n "@UNITTESTS@" -a -x "$KYUA" -a -f Kyuafile ]
 then
        echo "S:unit:`date`"
        echo "T:unit:1:A"
-       echo "I: unit tests"
-       kyua --logfile kyua.log test
+       echo "I: unit tests (using kyua)"
+       kyua --logfile kyua.log --loglevel debug test --results-file ${KYUA_RESULT:-NEW}
        status=$?
 
-       kyua report
+       kyua report --results-file ${KYUA_RESULT:-LATEST}
 
        if [ $status -eq 0 ]
        then