These script use /bin/sh as the interpreter, but contains bashism:
recipes-devtools/insserv/files/run-ptest
recipes-devtools/quilt/quilt/run-ptest
recipes-devtools/tcltk/tcl/run-ptest
recipes-extended/gawk/gawk-4.1.1/run-ptest
recipes-support/beecrypt/beecrypt/run-ptest
Fixed:
"==" -> "=" (should be -eq when integer)
"&>log" -> ">log 2>&1"
And quilt's test scripts requires bash, add bash to RDEPENDS_quilt-ptest
(From OE-Core rev:
70c6e0b84d3e17807cbea0677df2f0772a284130)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
}
for i in test_simple_sequence test_undetected_loop; \
- do $i &>/dev/null ; output; \
+ do $i >/dev/null 2>&1; output; \
done
rm -rf ${tmpdir}
RDEPENDS_${PN}-ptest = "make file sed gawk diffutils findutils ed perl \
perl-module-filehandle perl-module-getopt-std \
perl-module-posix perl-module-file-temp \
- perl-module-text-parsewords \
+ perl-module-text-parsewords bash \
"
#!/bin/sh
ln -sf /bin/ed /usr/bin/ed
-for i in `ls test/*.test |awk -F. '{print $1}' |awk -F/ '{print $2}'`; do make check-$i; if [ $? == 0 ]; then echo PASS: $i.test; else echo FAIL: $i.test; fi; done
+for i in `ls test/*.test |awk -F. '{print $1}' |awk -F/ '{print $2}'`; do make check-$i; if [ $? -eq 0 ]; then echo PASS: $i.test; else echo FAIL: $i.test; fi; done
rm -f /usr/bin/ed
#!/bin/sh
for i in `ls tests/*.test |awk -F/ '{print $2}'`; \
- do TCL_LIBRARY=library ./tcltest tests/all.tcl -file $i &>$i.tmp; \
+ do TCL_LIBRARY=library ./tcltest tests/all.tcl -file $i >$i.tmp 2>&1; \
grep -q "^Files with failing tests:" $i.tmp; \
- if [ $? == 0 ]; then echo "FAIL: $i"; \
+ if [ $? -eq 0 ]; then echo "FAIL: $i"; \
else echo "PASS: $i"; rm -f $i.tmp; fi; \
done
cd test
for i in `grep -vE "@|^$|#|Gt-dummy" Maketests |awk -F: '{print $1}'`; \
do LC_ALL=${GAWKLOCALE:-C} LANG=${GAWKLOCALE:-C} srcdir=`pwd` AWK=gawk CMP=cmp \
- make -f Maketests $i &>$i.tmp; \
+ make -f Maketests $i >$i.tmp 2>&1; \
grep -q "Error" $i.tmp; \
- if [ $? == 0 ]; then echo "FAIL: $i"; \
+ if [ $? -eq 0 ]; then echo "FAIL: $i"; \
else echo "PASS: $i"; rm -f $i.tmp; fi; \
done
#!/bin/sh
cd tests
-for i in `ls`; do ./$i; if [ $? == 0 ]; then echo "PASS: $i"; \
+for i in `ls`; do ./$i; if [ $? -eq 0 ]; then echo "PASS: $i"; \
else echo "FAIL: $i"; fi; done