root / ci / tests.sh @ 6bed578c
History | View | Annotate | Download (1 kB)
1 |
#!/bin/sh |
---|---|
2 |
set -e |
3 |
|
4 |
SNF_MANAGE=$(which snf-manage) || |
5 |
{ echo "Cannot find snf-manage in $PATH" 1>&2; exit 1; } |
6 |
|
7 |
runtest () { |
8 |
TEST="$SNF_MANAGE test $* --traceback --settings=synnefo.settings.test" |
9 |
|
10 |
if coverage >/dev/null 2>&1; then |
11 |
coverage run $TEST |
12 |
coverage report --include=snf-* |
13 |
else |
14 |
echo "WARNING: Cannot find coverage in path, skipping coverage tests" 1>&2 |
15 |
$TEST |
16 |
fi |
17 |
} |
18 |
|
19 |
export SYNNEFO_SETTINGS_DIR=/tmp/snf-test-settings |
20 |
|
21 |
ASTAKOS_APPS="im quotaholder_app" |
22 |
CYCLADES_APPS="api db logic plankton quotas vmapi helpdesk" |
23 |
PITHOS_APPS="api" |
24 |
|
25 |
TEST_COMPONENTS="$@" |
26 |
if [ -z "$TEST_COMPONENTS" ]; then |
27 |
TEST_COMPONENTS="astakos cyclades pithos" |
28 |
fi |
29 |
|
30 |
for component in $TEST_COMPONENTS; do |
31 |
if [ "$component" = "astakos" ]; then |
32 |
runtest $ASTAKOS_APPS |
33 |
elif [ "$component" = "cyclades" ]; then |
34 |
export SYNNEFO_EXCLUDE_PACKAGES="snf-pithos-app" |
35 |
runtest $CYCLADES_APPS |
36 |
elif [ "$component" = "pithos" ]; then |
37 |
export SYNNEFO_EXCLUDE_PACKAGES="snf-cyclades-app" |
38 |
runtest $PITHOS_APPS |
39 |
fi |
40 |
done |