-
Notifications
You must be signed in to change notification settings - Fork 1
/
update_environment.sh
executable file
·66 lines (53 loc) · 1.99 KB
/
update_environment.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
#!/bin/bash
export TEST_SUITES_IN_ACTION=$1
testsuites_in_action=($TEST_SUITES_IN_ACTION)
export TEST_SUITES="\
skale-manager+ts_1
skaled+internals
skaled+load_python
skaled+load_js
skaled+contractsRunningTest
skaled+filestorage
skaled+api
skaled+stability
skaled+upgrade_test"
test_suites=()
while IFS= read -r line ; do test_suites+=($line); done <<< "$TEST_SUITES"
# if any test name is provided then run all possible tests
[ -z $TEST_SUITES_IN_ACTION ] && testsuites_in_action=("${test_suites[@]}")
echo "Test suites in action --->"
for test_suite in ${testsuites_in_action[@]}
do
printf "%s\n" "$test_suite"
done
echo "<--- Test suites in action"
# validate that test suites is exist
for testsuite_in_action in ${testsuites_in_action[@]}
do
if [[ ! " ${test_suites[@]} " =~ " ${testsuite_in_action} " ]]; then
echo
echo "----- ERROR -----"
echo "Test suite [${testsuite_in_action}] doesnt exist. Use from list:"
echo "$TEST_SUITES"
echo "-----------------"
exit 1
fi
done
export REPO_ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
export INTEGRATION_TESTS_DIR=$REPO_ROOT_DIR/integration_tests
echo "INTEGRATION_TESTS_DIR = $INTEGRATION_TESTS_DIR"
# exit on error
set -e
for test_suite in ${testsuites_in_action[@]}
do
SOFTWARE_UNDER_TEST=$(echo $test_suite | cut -d'+' -f1)
echo "SOFTWARE_UNDER_TEST = $SOFTWARE_UNDER_TEST"
TEST_SUITE=$(echo $test_suite | cut -d'+' -f2)
echo "TEST_SUITE = $TEST_SUITE"
export TEST_SUITE_ENVIRONMENT_SCRIPT=$INTEGRATION_TESTS_DIR/$SOFTWARE_UNDER_TEST/$TEST_SUITE/environment.sh && test $TEST_SUITE_ENVIRONMENT_SCRIPT
echo "TEST_SUITE_ENVIRONMENT_SCRIPT = $TEST_SUITE_ENVIRONMENT_SCRIPT"
bash $TEST_SUITE_ENVIRONMENT_SCRIPT
export TEST_SUITE_CONFIG_SCRIPT=$INTEGRATION_TESTS_DIR/$SOFTWARE_UNDER_TEST/$TEST_SUITE/config.sh && test $TEST_SUITE_ENVIRONMENT_SCRIPT
echo "TEST_SUITE_CONFIG_SCRIPT = $TEST_SUITE_CONFIG_SCRIPT"
bash $TEST_SUITE_CONFIG_SCRIPT
done