getopt_nested.tests 651 B

123456789101112131415161718192021
  1. # Test that there is no interference of getopt()
  2. # in getopts and unset.
  3. # It's unclear what "correct" OPTIND values should be
  4. # for "b" and "c" results from "-bc": 2? 3?
  5. # What we focus on here is that all options are reported
  6. # correct number of times and in correct sequence.
  7. (
  8. loop=99
  9. while getopts "abc" var -a -bc -abc -def -a; do
  10. echo "var:$var" #OPTIND:$OPTIND
  11. # this may use getopt():
  12. unset -ff func
  13. test $((--loop)) = 0 && break # BUG if this triggers
  14. done
  15. echo "End: var:$var OPTIND:$OPTIND"
  16. ) 2>&1 \
  17. | sed -e 's/ unrecognized option: / invalid option -- /' \
  18. -e 's/ illegal option -- / invalid option -- /' \