-
Notifications
You must be signed in to change notification settings - Fork 116
/
test_helpers.sh
39 lines (34 loc) · 958 Bytes
/
test_helpers.sh
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
35
36
37
38
39
RED='\033[0;91m'
GREEN='\033[0;92m'
YELLOW='\033[0;93m'
NC='\033[0m'
pass=0
fail=0
returncode=0
XML=""
function green {
(( pass += 1 ))
printf "%s: ${GREEN}$2${NC}\n" "$1"
XML+=" <testcase name=\"$1\"/>\n"
}
function yellow {
(( fail += 1 ))
returncode=1
printf "%s: ${YELLOW}$2${NC}\n" "$1"
XML+=" <testcase name=\"$1\">\n <error message=\"$2\">$2</error>\n </testcase>\n"
}
function red {
(( fail += 1 ))
returncode=1
printf "%s: ${RED}$2${NC}\n" "$1"
XML+=" <testcase name=\"$1\">\n <error message=\"$2\">$2</error>\n </testcase>\n"
}
function finish_suite {
printf "%s: Passed ${pass} out of $(( pass + fail ))\n\n" "$1"
XML=" <testsuite name=\"$1\" tests=\"$(( pass + fail ))\" failures=\"${fail}\" timestamp=\"$(date)\">\n$XML </testsuite>\n"
# Note: we use echo -e to escape \n characters
echo -e "$XML" >> "$DIR/tests.xml"
XML=""
pass=0
fail=0
}