@@ -57,70 +57,59 @@ export interface LaunchResult {
57
57
58
58
// dev-container-features-test-lib
59
59
export const testLibraryScript = `
60
- #!/bin/bash
61
60
SCRIPT_FOLDER="$(cd "$(dirname $0)" && pwd)"
62
61
USERNAME=\${1:-root}
62
+ export TERM=\${TERM:-dumb}
63
63
64
64
if [ -z $HOME ]; then
65
65
HOME="/root"
66
66
fi
67
67
68
- FAILED=()
69
-
70
- echoStderr()
71
- {
72
- echo "$@" 1>&2
73
- }
68
+ FAILED=""
74
69
75
70
check() {
76
71
LABEL=$1
77
72
shift
78
- echo -e "\n"
79
- echo -e "🔄 Testing '$LABEL'"
80
- echo -e '\\033[37m'
73
+ printf "\n🔄 Testing '%s'%s" "\${LABEL}" "$(tput setaf 7)"
81
74
if "$@"; then
82
- echo -e "\n"
83
- echo "✅ Passed '$LABEL'!"
75
+ printf "\n✅ Passed '%s'!" "\${LABEL}"
84
76
return 0
85
77
else
86
- echo -e "\n"
87
- echoStderr "❌ $LABEL check failed."
88
- FAILED+=("$ LABEL")
78
+ printf "\n"
79
+ printf "❌ %s check failed." "\${LABEL}" >&2
80
+ FAILED="\${FAILED}\n\${ LABEL}"
89
81
return 1
90
82
fi
91
83
}
92
84
93
85
checkMultiple() {
94
86
PASSED=0
95
87
LABEL="$1"
96
- echo -e "\n"
97
- echo -e "🔄 Testing '$LABEL'."
88
+ printf "\n🔄 Testing '%s'." "\${LABEL}"
98
89
shift; MINIMUMPASSED=$1
99
90
shift; EXPRESSION="$1"
100
91
while [ "$EXPRESSION" != "" ]; do
101
- if $EXPRESSION; then ((PASSED+= 1)); fi
92
+ if $EXPRESSION; then PASSED=$ ((PASSED+1)); fi
102
93
shift; EXPRESSION=$1
103
94
done
104
95
if [ $PASSED -ge $MINIMUMPASSED ]; then
105
- echo -e "\n"
106
- echo "✅ Passed!"
96
+ printf "\n✅ Passed!"
107
97
return 0
108
98
else
109
- echo -e "\n"
110
- echoStderr "❌ '$LABEL ' check failed."
111
- FAILED+=("$ LABEL")
99
+ printf "\n"
100
+ printf "❌ '%s ' check failed." "\${LABEL}" >&2
101
+ FAILED="\${FAILED}\n\${ LABEL}"
112
102
return 1
113
103
fi
114
104
}
115
105
116
106
reportResults() {
117
- if [ \${# FAILED[@]} -ne 0 ]; then
118
- echo -e "\n"
119
- echoStderr -e "💥 Failed tests: \${FAILED[@]}"
107
+ if [ " \${FAILED}" ]; then
108
+ printf "\n"
109
+ printf "💥 Failed tests: %s" " \${FAILED}" >&2
120
110
exit 1
121
111
else
122
- echo -e "\n"
123
- echo -e "Test Passed!"
112
+ printf "\nTest Passed!"
124
113
exit 0
125
114
fi
126
115
}` ;
0 commit comments