On Tue, 13 Feb 2024 19:23:50 GMT, Roger Riggs <rri...@openjdk.org> wrote:

>>> what's the output for `coreutils --help` for a single executable binary?
>> 
>> 
>> # coreutils --help
>> Usage: coreutils --coreutils-prog=PROGRAM_NAME [PARAMETERS]... 
>> Execute the PROGRAM_NAME built-in program with the given PARAMETERS.
>> 
>>       --help     display this help and exit
>>       --version  output version information and exit
>> 
>> Built-in programs:
>>  [ arch b2sum base32 base64 basename basenc cat chcon chgrp chmod chown 
>> chroot cksum comm cp csplit cut date dd df dir dircolors dirname du echo env 
>> expand expr factor false fmt fold ginstall groups head hostid id join link 
>> ln logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc numfmt 
>> od paste pathchk pinky pr printenv printf ptx pwd readlink realpath rm rmdir 
>> runcon seq sha1sum sha224sum sha256sum sha384sum sha512sum shred shuf sleep 
>> sort split stat stdbuf stty sum sync tac tail tee test timeout touch tr true 
>> truncate tsort tty uname unexpand uniq unlink users vdir wc who whoami yes
>> 
>> Use: 'coreutils --coreutils-prog=PROGRAM_NAME --help' for individual program 
>> help.
>> 
>> GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
>> Report any translation bugs to <https://translationproject.org/team/>
>> Full documentation <https://www.gnu.org/software/coreutils/coreutils>
>> or available locally via: info '(coreutils) Multi-call invocation'
>> 
>> 
>> This test is about parameter checking, so I am inclined to agree with @ecki 
>> and not check the process name or change the exe.
>
> At the time `sleep` seemed ubiquitous and was native so it ran quickly. (Much 
> quicker than running java).
> Running another program would be fine.  For example ,selecting an executable 
> based on the OS type and giving the expected string in the output would be 
> preferred.
> The isBusyBox check is also a bad hack, but lighter weight since its not 
> executing a program.
> As the number of minor variations of platforms appear a more general approach 
> would be useful.
> 
> I'd code it all in the test itself, doing a lookup based on the operating 
> system name with the respective executable and expected string in the info 
> arguments[0].
> (With a fallback to sleep, so the table does not have to list every os).

Any reason not to use 
[exesanity_SimpleNativeLauncher](https://github.com/openjdk/jdk/blob/628cd8a489fd54db18204c3bbaf4339d7ab5e9d6/test/jdk/native_sanity/simplenativelauncher/exesanity_SimpleNativeLauncher.c)
 or 
[exeBasicSleep](https://github.com/openjdk/jdk/blob/628cd8a489fd54db18204c3bbaf4339d7ab5e9d6/test/jdk/java/lang/ProcessBuilder/exeBasicSleep.c)
 in all cases?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/17798#discussion_r1488594104

Reply via email to