4
4
5
5
TMP_DIR=" tmp"
6
6
TMP_BIN=" $TMP_DIR /bashunit"
7
- ACTIVE_INTERNET=0
7
+ ACTIVE_INTERNET=false
8
+ HAS_DOWNLOADER=false
9
+ HAS_GIT=false
8
10
9
11
function set_up_before_script() {
10
- env::active_internet_connection
11
- ACTIVE_INTERNET=$?
12
+ if env::active_internet_connection; then
13
+ ACTIVE_INTERNET=true
14
+ fi
15
+
16
+ if dependencies::has_curl || dependencies::has_wget; then
17
+ HAS_DOWNLOADER=true
18
+ fi
19
+
20
+ if dependencies::has_git; then
21
+ HAS_GIT=true
22
+ fi
12
23
}
13
24
14
25
function tear_down_after_script() {
@@ -17,7 +28,11 @@ function tear_down_after_script() {
17
28
18
29
function set_up() {
19
30
./build.sh " $TMP_DIR " > /dev/null
20
- LATEST_VERSION=" $( helpers::get_latest_tag) "
31
+ if [[ " $ACTIVE_INTERNET " == true ]] && [[ " $HAS_GIT " == true ]]; then
32
+ LATEST_VERSION=" $( helpers::get_latest_tag) "
33
+ else
34
+ LATEST_VERSION=" ${BASHUNIT_VERSION} "
35
+ fi
21
36
TEST_ENV_FILE=" tests/acceptance/fixtures/.env.default"
22
37
}
23
38
@@ -36,9 +51,15 @@ function test_do_not_upgrade_when_latest() {
36
51
}
37
52
38
53
function test_upgrade_when_a_new_version_found() {
39
- if [[ " $ACTIVE_INTERNET " -eq 1 ]]; then
54
+ if [[ " $ACTIVE_INTERNET " == false ]]; then
40
55
skip " no internet connection" && return
41
56
fi
57
+ if [[ " $HAS_GIT " == false ]]; then
58
+ skip " git not installed" && return
59
+ fi
60
+ if [[ " $HAS_DOWNLOADER " == false ]]; then
61
+ skip " curl or wget not installed" && return
62
+ fi
42
63
43
64
sed -i -e \
44
65
' s/declare -r BASHUNIT_VERSION="[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}"/declare -r BASHUNIT_VERSION="0.1.0"/' \
@@ -57,16 +78,22 @@ function test_upgrade_when_a_new_version_found() {
57
78
}
58
79
59
80
function test_do_not_update_on_consecutive_calls() {
60
- if [[ " $ACTIVE_INTERNET " -eq 1 ]]; then
81
+ if [[ " $ACTIVE_INTERNET " == false ]]; then
61
82
skip " no internet connection" && return
62
83
fi
84
+ if [[ " $HAS_GIT " == false ]]; then
85
+ skip " git not installed" && return
86
+ fi
87
+ if [[ " $HAS_DOWNLOADER " == false ]]; then
88
+ skip " curl or wget not installed" && return
89
+ fi
63
90
64
91
sed -i -e \
65
92
' s/declare -r BASHUNIT_VERSION="[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}"/declare -r BASHUNIT_VERSION="0.1.0"/' \
66
- $TMP_BIN
93
+ " $TMP_BIN "
67
94
68
95
if [[ $_OS == " OSX" ]]; then
69
- rm $ TMP_BIN-e
96
+ rm -f " ${ TMP_BIN} -e "
70
97
fi
71
98
72
99
$TMP_BIN --upgrade
0 commit comments