aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2021-01-29 01:47:23 +0100
committerSven Gothel <[email protected]>2021-01-29 01:47:23 +0100
commit199f963f2398c3941492e898f5cb03e9ae077114 (patch)
tree50d4585019ddf15a26e4e2303418c63054c7d20c
parent1107243a82f1745a5f5a2ec28e1d1fa5da5dc4f8 (diff)
add script/*.sh for native tests
l---------scripts/test_attpdu01.sh1
l---------scripts/test_btaddress01.sh1
-rwxr-xr-xscripts/test_exe_template.sh74
l---------scripts/test_uuid.sh1
4 files changed, 77 insertions, 0 deletions
diff --git a/scripts/test_attpdu01.sh b/scripts/test_attpdu01.sh
new file mode 120000
index 00000000..318827ba
--- /dev/null
+++ b/scripts/test_attpdu01.sh
@@ -0,0 +1 @@
+test_exe_template.sh \ No newline at end of file
diff --git a/scripts/test_btaddress01.sh b/scripts/test_btaddress01.sh
new file mode 120000
index 00000000..318827ba
--- /dev/null
+++ b/scripts/test_btaddress01.sh
@@ -0,0 +1 @@
+test_exe_template.sh \ No newline at end of file
diff --git a/scripts/test_exe_template.sh b/scripts/test_exe_template.sh
new file mode 100755
index 00000000..1ac741ef
--- /dev/null
+++ b/scripts/test_exe_template.sh
@@ -0,0 +1,74 @@
+#!/bin/sh
+
+# Arguments:
+# --perf_analysis special performance analysis using 3rd party tools
+# -v normal dummy for full benchmarking
+# <none> auto_run, no benchmarking
+#
+
+sdir=`dirname $(readlink -f $0)`
+rootdir=`dirname $sdir`
+bname=`basename $0 .sh`
+
+. $sdir/setup-machine-arch.sh
+
+build_dir=$rootdir/build-$archabi
+
+if [ ! -e $build_dir/test/direct_bt/$bname ] ; then
+ echo "test exe $build_dir/test/direct_bt/$bname not existing"
+ exit 1
+fi
+
+if [ "$1" = "-log" ] ; then
+ logbasename=$2
+ shift 2
+else
+ logbasename=$bname.$archabi
+fi
+
+logfile=$rootdir/doc/test/$logbasename.0.log
+rm -f $logfile
+
+valgrindlogfile=$rootdir/doc/test/$logbasename.valgrind.0.log
+rm -f $valgrindlogfile
+
+callgrindoutfile=$rootdir/doc/test/$logbasename.callgrind.0.out
+rm -f $callgrindoutfile
+
+ulimit -c unlimited
+
+# run as root 'dpkg-reconfigure locales' enable 'en_US.UTF-8'
+# perhaps run as root 'update-locale LC_MEASUREMENT=en_US.UTF-8 LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8'
+export LC_MEASUREMENT=en_US.UTF-8
+export LC_ALL=en_US.UTF-8
+export LANG=en_US.UTF-8
+
+export EXE_WRAPPER="valgrind --tool=memcheck --leak-check=full --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xfe --error-limit=no --default-suppressions=yes --suppressions=$sdir/valgrind.supp --gen-suppressions=all --show-error-list=yes --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="valgrind --tool=memcheck --leak-check=full --show-leak-kinds=definite --track-origins=yes --malloc-fill=0xff --free-fill=0xfe --error-limit=no --default-suppressions=yes --suppressions=$sdir/valgrind.supp --gen-suppressions=all --show-error-list=yes --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="valgrind --tool=memcheck --leak-check=summary --show-leak-kinds=definite --default-suppressions=yes --suppressions=$sdir/valgrind.supp --gen-suppressions=all --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="valgrind --tool=helgrind --track-lockorders=yes --ignore-thread-creation=yes --default-suppressions=yes --suppressions=$sdir/valgrind.supp --gen-suppressions=all -s --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="valgrind --tool=drd --segment-merging=no --ignore-thread-creation=yes --trace-barrier=no --trace-cond=no --trace-fork-join=no --trace-mutex=no --trace-rwlock=no --trace-semaphore=no --default-suppressions=yes --suppressions=$sdir/valgrind.supp --gen-suppressions=all -s --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="valgrind --tool=callgrind --instr-atstart=yes --collect-atstart=yes --collect-systime=nsec --combine-dumps=yes --separate-threads=no --callgrind-out-file=$callgrindoutfile --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="nice -20 valgrind --tool=callgrind --read-inline-info=yes --instr-atstart=yes --collect-atstart=yes --collect-systime=nsec --combine-dumps=yes --separate-threads=no --callgrind-out-file=$callgrindoutfile --log-file=$valgrindlogfile"
+# export EXE_WRAPPER="ASAN_OPTIONS=verbosity=1:malloc_context_size=20 "
+# export EXE_WRAPPER="ASAN_OPTIONS=print_stats:halt_on_error:replace_intrin "
+# export EXE_WRAPPER="nice -20"
+
+runit() {
+ echo COMMANDLINE $0 $*
+ echo EXE_WRAPPER $EXE_WRAPPER
+ echo logbasename $logbasename
+ echo logfile $logfile
+ echo valgrindlogfile $valgrindlogfile
+ echo callgrindoutfile $callgrindoutfile
+
+ echo $EXE_WRAPPER $build_dir/test/direct_bt/$bname $*
+
+ #export ASAN_OPTIONS=verbosity=1:malloc_context_size=20
+ #export ASAN_OPTIONS=print_stats:halt_on_error:replace_intrin
+
+ $EXE_WRAPPER $build_dir/test/direct_bt/$bname $*
+}
+
+runit $* 2>&1 | tee $logfile
+
diff --git a/scripts/test_uuid.sh b/scripts/test_uuid.sh
new file mode 120000
index 00000000..318827ba
--- /dev/null
+++ b/scripts/test_uuid.sh
@@ -0,0 +1 @@
+test_exe_template.sh \ No newline at end of file