Sebastian Held patch 15/0001-jUnit-like-test-results.patch
git-svn-id: http://svn.eurecom.fr/openair4G/trunk@7303 818b1a75-f10b-46b9-bf7c-635c3b92a50f
This commit is contained in:
@@ -7,20 +7,26 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# include the jUnit-like logging functions
|
||||
source $OPENAIR_DIR/cmake_targets/tools/test_helper
|
||||
|
||||
test_compile() {
|
||||
xUnit_start
|
||||
mkdir -p $tdir/$1/build
|
||||
cd $tdir/$1/build
|
||||
{
|
||||
cmake ..
|
||||
rm -f $3
|
||||
make -j4 $2
|
||||
cmake ..
|
||||
rm -f $3
|
||||
make -j4 $2
|
||||
} > $tdir/log/$1.txt 2>&1
|
||||
if [ -s $3 ] ; then
|
||||
cp $3 $tdir/bin/`basename $3`.$1
|
||||
echo_success "$1 test compiled"
|
||||
else
|
||||
echo_error "$1 test compilation failed"
|
||||
fi
|
||||
cp $3 $tdir/bin/`basename $3`.$1
|
||||
echo_success "$1 test compiled"
|
||||
xUnit_success "compilation" $1
|
||||
else
|
||||
echo_error "$1 test compilation failed"
|
||||
xUnit_fail "compilation" $1
|
||||
fi
|
||||
}
|
||||
|
||||
tdir=$OPENAIR_DIR/cmake_targets/autotests
|
||||
@@ -77,3 +83,5 @@ test_compile \
|
||||
test.0120 nasmesh \
|
||||
CMakeFiles/nasmesh/nasmesh.ko $tdir/bin/nasmesh.ko
|
||||
|
||||
# write the test results into a file
|
||||
xUnit_write "$tdir/log/compilation_autotests.xml"
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
# source this file in a bash
|
||||
|
||||
XUNIT_TESTSUITE_START=0
|
||||
XUNIT_START=0
|
||||
XUNIT_TOTAL=0
|
||||
XUNIT_FAILED=0
|
||||
XUNIT_SUCCESS=0
|
||||
XUNIT_TESTCASES_XML=""
|
||||
|
||||
## Call this at the start of a testcase.
|
||||
# \sa xUnit_fail()
|
||||
# \sa xUnit_success()
|
||||
xUnit_start() {
|
||||
XUNIT_START=$(date +%s.%N)
|
||||
if [ $XUNIT_TESTSUITE_START == 0 ]; then
|
||||
# very first call: start of a testsuite
|
||||
XUNIT_TESTSUITE_START=$XUNIT_START
|
||||
fi
|
||||
}
|
||||
|
||||
## Call this after the testcase finished with a failure.
|
||||
# \sa xUnit_success()
|
||||
# \pre xUnit_start() must have been called before
|
||||
# \param $1 classname
|
||||
# \param $2 testcase name
|
||||
xUnit_fail() {
|
||||
currtime=$(date +%s.%N)
|
||||
time=$(echo "$currtime - $XUNIT_START" | bc -l)
|
||||
xml="<testcase classname='$1' name='$2' time='$time'><failure message='failed'/></testcase>"
|
||||
XUNIT_TESTCASES_XML="$XUNIT_TESTCASES_XML $xml"
|
||||
XUNIT_FAILED=$((XUNIT_FAILED+1))
|
||||
}
|
||||
|
||||
## Call this after the testcase finished successfully.
|
||||
# \sa xUnit_fail()
|
||||
# \pre xUnit_start() must have been called before
|
||||
# \param $1 classname
|
||||
# \param $2 testcase name
|
||||
xUnit_success() {
|
||||
currtime=$(date +%s.%N)
|
||||
time=$(echo "$currtime - $XUNIT_START" | bc -l)
|
||||
xml="<testcase classname='$1' name='$2' time='$time' />"
|
||||
XUNIT_TESTCASES_XML="$XUNIT_TESTCASES_XML $xml"
|
||||
XUNIT_SUCCESS=$((XUNIT_SUCCESS+1))
|
||||
}
|
||||
|
||||
## Call this after all testcases have been completed.
|
||||
# This functions writes out the test report.
|
||||
# \param $1 filename
|
||||
xUnit_write() {
|
||||
tests=$((XUNIT_FAILED+XUNIT_SUCCESS))
|
||||
timestamp=$(date --iso-8601=seconds)
|
||||
time=$(echo "$currtime - $XUNIT_TESTSUITE_START" | bc -l)
|
||||
xml_header="<testsuites><testsuite errors='0' failures='$XUNIT_FAILED' hostname='$(hostname)' name='OAI' skipped='0' tests='$tests' time='$time' timestamp='$timestamp'>"
|
||||
echo $xml_header > $1
|
||||
echo $XUNIT_TESTCASES_XML >> $1
|
||||
echo "</testsuite></testsuites>" >> $1
|
||||
XUNIT_TESTSUITE_START=0
|
||||
XUNIT_START=0
|
||||
XUNIT_TOTAL=0
|
||||
XUNIT_FAILED=0
|
||||
XUNIT_SUCCESS=0
|
||||
XUNIT_TESTCASES_XML=""
|
||||
}
|
||||
Reference in New Issue
Block a user