3 ms·
The test file seems fun, but overall it's not that bad. Bash is a fairly simple to parse syntax-wise, so as long as you know your coreutils and you know what yo
by zingmars 9y ago
The test file seems fun, but overall it's not that bad. Bash is a fairly simple to parse syntax-wise, so as long as you know your coreutils and you know what you're looking for, making simple changes is fairly easy.
- drinchev 9y agoIt doesn't look so simple, but definitely looks quirky. Take a look at how the tests are invoked : for t in $(grep ^le_test_ $FILE_NAME | cut -d '(' -f 1) do if [ -z "$CASE" ] ; then __green "Progress: " [ "$_ret" = "0" ] && __green "$_ret" || __red "$_ret" __green "/$num/$total" printf "\n" num=$(_math $num + 1) fi ... It basically parses the very same file and checks for functions with the name `le_test`. This means that a random comment containing `le_test_` will break the whole script. You need lots of discipline in order to make things work. Bash works perfectly with "Write programs that do one thing and do it well". Wouldn't be so surprised if this was a bunch of small test cases separated by file.
- LambdaComplex 9y agoLooks like it's only grepping for lines that start with le_test_. A comment would start with #
- moviuro 9y ago^ is beginning of line, so you'd need: le_test_xxx # <- this is not a comment anyway # le_test_xxx does something nice. # <- doesn't match ^le_test_