On 12/02/2012 02:17 PM, Torsten Bögershausen wrote: > The test suite needs to be run on different platforms. > As it may be difficult for contributors to catch syntax > which work on GNU/linux, but is unportable, make a quick check > for the most common problems. > "sed -i", "echo -n" or "array in shell scripts" > This list is not complete, and may need to be extended > > Signed-off-by: Torsten Bögershausen <tboegi@xxxxxx> > --- > We add 1 second test execution time > Is this a useful idea at all? > FWIW, I think such an idea is useful (and also easy to implement, so another +1 from me). > t/t99999-syntax-check.sh | 28 ++++++++++++++++++++++++++++ > 1 file changed, 28 insertions(+) > create mode 100755 t/t99999-syntax-check.sh > > diff --git a/t/t99999-syntax-check.sh b/t/t99999-syntax-check.sh > new file mode 100755 > index 0000000..c4a9289 > --- /dev/null > +++ b/t/t99999-syntax-check.sh > @@ -0,0 +1,28 @@ > +#!/bin/sh > + > +test_description='Basic check if shell syntax is portable' > + > +. ./test-lib.sh > + > + > +test_expect_success 'No arrays in shell scripts' ' > + >expected && > + (grep -i -n "^[ ]*declare[ ][ ]*" ../*.sh ../../git-* >actual 2>&1 || : ) && > Here I'd simply use: ! grep -n "^declare[ ][ ]*" ../*.sh ../../*.sh And similarly for the tests below. In addition, the globs above still miss some files ('perf/perf-lib.sh' and 'valgrind/analyze.sh', for example); so we might want to improve it, using, say, "git ls-files" (or find(1), in case the test is to be run also from distribution tarballs). HTH, Stefano -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html