Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
interp_test: fix sleep syntax compatibility (#894)
Running the tests on master gives me the following error: ``` --- FAIL: TestRunnerRunConfirm (0.03s) --- FAIL: TestRunnerRunConfirm/#420 (0.02s) interp_test.go:3690: wrong bash output in "f() { echo 1; }; { sleep 0.01s; f; } & f() { echo 2; }; wait": want: "1\n" got: "usage: sleep seconds\n1\n" ``` I am running on `bash version 5.1.16(1)-release`: ``` $ bash --version GNU bash, version 5.1.16(1)-release (aarch64-apple-darwin21.5.0) Copyright (C) 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ``` The error I suppose, is because of the difference of the sleep syntax on BSD/Unix/MacOS vs on GNU/Linux - the former requires no unit and defaults to seconds, while the latter requires either `smdh` as unit To fix, fix the `sleep` test builtin to accept either of the syntax and default to seconds when none is found Finally, modify the tests to run without units so it would pass when ran against real bash
- Loading branch information