forked from Project-MONAI/MONAI
-
Notifications
You must be signed in to change notification settings - Fork 0
/
runtests.sh
executable file
·104 lines (81 loc) · 1.79 KB
/
runtests.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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#! /bin/bash
set -e
# Test script for running all tests
homedir="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$homedir"
export PYTHONPATH="$homedir:$PYTHONPATH"
echo "$PYTHONPATH"
# configuration values
doCoverage=false
doQuickTests=false
doNetTests=false
doDryRun=false
doZooTests=false
# testing command to run
cmd="python3"
cmdprefix=""
# parse arguments
for i in "$@"
do
case $i in
--coverage)
doCoverage=true
;;
--quick)
doQuickTests=true
doCoverage=true
export QUICKTEST=True
;;
--net)
doNetTests=true
;;
--dryrun)
doDryRun=true
;;
--zoo)
doZooTests=true
;;
*)
echo "runtests.sh [--coverage] [--quick] [--net] [--dryrun] [--zoo]"
exit 1
;;
esac
done
# commands are echoed instead of run in this case
if [ "$doDryRun" = 'true' ]
then
echo "Dry run commands:"
cmdprefix="dryrun "
# create a dry run function which prints the command prepended with spaces for neatness
function dryrun { echo " " $* ; }
fi
# set command and clear previous coverage data
if [ "$doCoverage" = 'true' ]
then
cmd="coverage run -a --source ."
${cmdprefix} coverage erase
fi
# # download test data if needed
# if [ ! -d testing_data ] && [ "$doDryRun" != 'true' ]
# then
# fi
# unit tests
${cmdprefix}${cmd} -m unittest -v
# network training/inference/eval tests
if [ "$doNetTests" = 'true' ]
then
for i in tests/integration_*.py
do
echo $i
${cmdprefix}${cmd} $i
done
fi
# # run model zoo tests
# if [ "$doZooTests" = 'true' ]
# then
# fi
# report on coverage
if [ "$doCoverage" = 'true' ]
then
${cmdprefix}coverage report --skip-covered -m
fi