no arg:
yes/no     :false
Y/N        :false
y/n        :false
true/false :false
set true   :false
set false  :true
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 0    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 0    WIFCONTINUED: 0

all true/set arg:
yes/no     :true
Y/N        :true
y/n        :true
true/false :true
set true   :true
set false  :false
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 0    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 0    WIFCONTINUED: 0

all false/unset arg:
yes/no     :false
Y/N        :false
y/n        :false
true/false :false
set true   :false
set false  :true
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 0    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 0    WIFCONTINUED: 0

gibberish arg 1:
Argument 'true' for option y could not be parsed

Usage:
  parsebools [OPTIONS]...
testing bool parameters
  -e, --yesno       test yes/no
  -y, --YN          test yes/no
  -n, --yn          test yes/no
  -t, --truefalse   test true/false
  -s, --settrue     test set true
  -u, --setfalse    test set false
  -h, --help        print this help message
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 1    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 1    WIFCONTINUED: 0

gibberish arg 2:
Argument 'yes' for option t could not be parsed

Usage:
  parsebools [OPTIONS]...
testing bool parameters
  -e, --yesno       test yes/no
  -y, --YN          test yes/no
  -n, --yn          test yes/no
  -t, --truefalse   test true/false
  -s, --settrue     test set true
  -u, --setfalse    test set false
  -h, --help        print this help message
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 1    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 1    WIFCONTINUED: 0

gibberish arg 3:
parsebools: invalid option -- '='
Usage:
  parsebools [OPTIONS]...
testing bool parameters
  -e, --yesno       test yes/no
  -y, --YN          test yes/no
  -n, --yn          test yes/no
  -t, --truefalse   test true/false
  -s, --settrue     test set true
  -u, --setfalse    test set false
  -h, --help        print this help message
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 1    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 1    WIFCONTINUED: 0

gibberish arg 4:
parsebools: invalid option -- '='
Usage:
  parsebools [OPTIONS]...
testing bool parameters
  -e, --yesno       test yes/no
  -y, --YN          test yes/no
  -n, --yn          test yes/no
  -t, --truefalse   test true/false
  -s, --settrue     test set true
  -u, --setfalse    test set false
  -h, --help        print this help message
Child status:
    WIFEXITED   : 1    WEXITSTATUS : 1    WIFSIGNALED : 0    WTERMSIG    : 0    WCOREDUMP   : 0    WIFSTOPPED  : 0    WSTOPSIG    : 1    WIFCONTINUED: 0

All Done!
