-
Notifications
You must be signed in to change notification settings - Fork 42
Expand file tree
/
Copy pathrun-tests
More file actions
executable file
·34 lines (32 loc) · 1.45 KB
/
run-tests
File metadata and controls
executable file
·34 lines (32 loc) · 1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/bash
until curl -s -f -o /dev/null "http://localhost:9000/"
do
echo "Tests are waiting for the rest bridge to start..."
sleep 5
done
echo "preparing to run tests"
python3 -m venv /tmp/pyenv
source /tmp/pyenv/bin/activate
pip install -r tests/requirements.txt
res=$(behave tests/features)
echo "$res"
numberOfFailedSteps=$(echo "$res" | awk '/[0-9]+\ssteps\spassed,\s[0-9]+\sfailed/ {print $4}')
numberOfErroredSteps=$(echo "$res" | awk '/[0-9]+\ssteps\spassed,\s[0-9]+\sfailed,\s[0-9]+\serror/ {print $6}')
numberOfSkippedSteps=$(echo "$res" | awk '/[0-9]+\ssteps\spassed,\s[0-9]+\sfailed,\s[0-9]+\sskipped/ {print $6}')
numberOfUndefinedSteps=$(echo "$res" | awk '/[0-9]+\ssteps\spassed,\s[0-9]+\sfailed,\s[0-9]+\s[a-z]+,\s[0-9]+\sundefined/ {print $8}')
if [[ -z $numberOfFailedSteps || ! $numberOfFailedSteps =~ ^-?[0-9]+$ ]]; then
numberOfFailedSteps=0
fi
if [[ -z $numberOfErroredSteps || ! $numberOfErroredSteps =~ ^-?[0-9]+$ ]]; then
numberOfErroredSteps=0
fi
if [[ -z $numberOfSkippedSteps || ! $numberOfSkippedSteps =~ ^-?[0-9]+$ ]]; then
numberOfSkippedSteps=0
fi
if [[ -z $numberOfUndefinedSteps || ! $numberOfUndefinedSteps =~ ^-?[0-9]+$ ]]; then
numberOfUndefinedSteps=0
fi
echo "number of errored steps: $numberOfErroredSteps"
echo "number of skipped steps: $numberOfSkippedSteps"
echo "number of undefined steps: $numberOfUndefinedSteps"
exit $(($numberOfFailedSteps + $numberOfErroredSteps + $numberOfSkippedSteps + $numberOfUndefinedSteps))