48 lines
1.1 KiB
Bash
Executable file
48 lines
1.1 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
|
|
source_dir=$PWD
|
|
working_dir=$PWD/testing_tmp
|
|
working_bak=$PWD/testing_bak
|
|
|
|
alias valgrind_emgauwa="valgrind --leak-check=full \
|
|
--show-leak-kinds=all \
|
|
--track-origins=yes \
|
|
--log-file=$working_dir/valgrind.log"
|
|
|
|
rm -rf $working_dir
|
|
mkdir -p $working_dir
|
|
cd $working_dir
|
|
|
|
git clone --quiet ssh://git@git.serguzim.me:3022/emgauwa/controller.git controller || exit
|
|
pushd ./controller > /dev/null
|
|
git checkout $2
|
|
mkdir build
|
|
cd build
|
|
|
|
cmake -DWIRING_PI_DEBUG=on .. >/dev/null
|
|
cp $source_dir/controller.testing.ini ./controller.ini
|
|
make >/dev/null
|
|
./controller start >$working_dir/controller.log 2>&1 &
|
|
controller_id=$!
|
|
popd > /dev/null
|
|
|
|
cp $1 $working_dir/core
|
|
cp $source_dir/core.testing.ini $working_dir/core.ini
|
|
|
|
valgrind_emgauwa $working_dir/core start >$working_dir/core.log 2>&1 &
|
|
core_id=$!
|
|
|
|
sleep 2;
|
|
|
|
export PYTHONPATH=$PYTHONPATH:$source_dir/tavern_utils
|
|
tavern-ci --disable-warnings $source_dir/tavern_tests
|
|
test_result=$?
|
|
|
|
kill $core_id
|
|
kill $controller_id
|
|
|
|
rm -rf $working_bak
|
|
mv $working_dir $working_bak
|
|
rm -rf $working_dir
|
|
|
|
exit $test_result
|