@@ -112,26 +112,23 @@ build_and_test() {
112
112
for crate in " ${CRATES[@]} " ; do
113
113
local test_vars_script=" $REPO_DIR /$crate /contrib/test_vars.sh"
114
114
115
- # Building the fuzz crate is more-or-less just a sanity check.
116
- if [ " $crate " = " fuzz" ]; then
117
- pushd " $REPO_DIR /$crate " > /dev/null
118
- cargo --locked build
119
- popd > /dev/null
120
- break
121
- fi
115
+ # Clean variables and also make sure they are defined.
116
+ FEATURES_WITH_STD=" "
117
+ FEATURES_WITH_NO_STD=" "
118
+ FEATURES_WITHOUT_STD=" "
119
+ EXAMPLES=" "
122
120
123
121
verbose_say " Sourcing $test_vars_script "
124
122
if [ -e " $test_vars_script " ]; then
125
123
# Set crate specific variables.
126
124
. " $test_vars_script "
127
- else
128
- err " Missing $test_vars_script "
129
- fi
130
- verbose_say " Got vars"
131
- verbose_say " FEATURES_WITH_STD: ${FEATURES_WITH_STD:- } "
132
- verbose_say " FEATURES_WITHOUT_STD: ${FEATURES_WITHOUT_STD:- } "
133
- verbose_say " EXAMPLES: ${EXAMPLES:- } "
134
125
126
+ verbose_say " Got test vars:"
127
+ verbose_say " FEATURES_WITH_STD: ${FEATURES_WITH_STD} "
128
+ verbose_say " FEATURES_WITH_NO_STD: ${FEATURES_WITH_NO_STD} "
129
+ verbose_say " FEATURES_WITHOUT_STD: ${FEATURES_WITHOUT_STD} "
130
+ verbose_say " EXAMPLES: ${EXAMPLES:- } "
131
+ fi
135
132
pushd " $REPO_DIR /$crate " > /dev/null
136
133
137
134
do_test
@@ -146,7 +143,7 @@ do_test() {
146
143
$cargo build
147
144
$cargo test
148
145
149
- if [ -n " ${EXAMPLES+x } " ]; then
146
+ if [ -n " ${EXAMPLES} " ]; then
150
147
for example in $EXAMPLES ; do # EXAMPLES is set in contrib/test_vars.sh
151
148
name=" $( echo " $example " | cut -d ' :' -f 1) "
152
149
features=" $( echo " $example " | cut -d ' :' -f 2) "
@@ -164,21 +161,21 @@ do_test() {
164
161
# can be better controlled.
165
162
do_feature_matrix () {
166
163
# rust-miniscript only: https://github.com/rust-bitcoin/rust-miniscript/issues/681
167
- if [ -n " ${FEATURES_WITH_NO_STD+x } " ]; then
164
+ if [ -n " ${FEATURES_WITH_NO_STD} " ]; then
168
165
$cargo build --no-default-features --features=" no-std"
169
166
$cargo test --no-default-features --features=" no-std"
170
167
171
- loop_features " no-std" " ${FEATURES_WITH_NO_STD:- } "
168
+ loop_features " no-std" " ${FEATURES_WITH_NO_STD} "
172
169
else
173
170
$cargo build --no-default-features
174
171
$cargo test --no-default-features
175
172
fi
176
173
177
- if [ -z " ${FEATURES_WITH_STD+x } " ]; then
178
- loop_features " std" " ${FEATURES_WITH_STD:- } "
174
+ if [ -n " ${FEATURES_WITH_STD} " ]; then
175
+ loop_features " std" " ${FEATURES_WITH_STD} "
179
176
fi
180
177
181
- if [ -z " ${FEATURES_WITHOUT_STD+x } " ]; then
178
+ if [ -n " ${FEATURES_WITHOUT_STD} " ]; then
182
179
loop_features " " " $FEATURES_WITHOUT_STD "
183
180
fi
184
181
}
0 commit comments