fish-shell/tests
ridiculousfish 1d21e3f470 Make while loops evaluate to the last executed command status
A while loop now evaluates to the last executed command in the body, or
zero if the loop body is empty. This matches POSIX semantics.

Add a bunch of tricky tests.

See #4982
2019-01-20 16:41:59 -08:00
..
invocation Feature flag support for ? wildcard 2018-05-06 11:20:15 -07:00
test_functions Don't resolve symlinks with cd 2018-10-06 17:03:18 -07:00
.gitignore tweak gitignore rules for *tests* directory 2017-02-20 20:29:43 -08:00
__fish_complete_directories.err improve __fish_complete_directories function 2017-04-11 13:45:53 -07:00
__fish_complete_directories.in Fix __fish_complete_suffix behavior per __fish_complete_directories test 2018-05-20 14:35:52 -05:00
__fish_complete_directories.out improve __fish_complete_directories function 2017-04-11 13:45:53 -07:00
__fish_contains_opt.err another __fish_sgrep replacement 2017-04-13 23:14:36 -07:00
__fish_contains_opt.in another __fish_sgrep replacement 2017-04-13 23:14:36 -07:00
__fish_contains_opt.out another __fish_sgrep replacement 2017-04-13 23:14:36 -07:00
__fish_not_contain_opt.err fix typo in unit test 2017-06-09 13:35:00 -07:00
__fish_not_contain_opt.in another __fish_sgrep replacement 2017-04-13 23:14:36 -07:00
__fish_not_contain_opt.out another __fish_sgrep replacement 2017-04-13 23:14:36 -07:00
abbr.err use new logmsg and set --show in tests 2017-08-03 21:25:20 -07:00
abbr.in the | tee /dev/stderr trick doesn't work on linux 2017-08-03 15:44:58 -07:00
abbr.out use new logmsg and set --show in tests 2017-08-03 21:25:20 -07:00
alias.err use new logmsg and set --show in tests 2017-08-04 11:02:11 -07:00
alias.in use new logmsg and set --show in tests 2017-08-04 11:02:11 -07:00
alias.out use new logmsg and set --show in tests 2017-08-04 11:02:11 -07:00
andandoror.err Add support for ! as an analog to 'not' 2018-03-05 14:04:49 -08:00
andandoror.in Add support for ! as an analog to 'not' 2018-03-05 14:04:49 -08:00
andandoror.out Add support for ! as an analog to 'not' 2018-03-05 14:04:49 -08:00
argparse.err Hoist for loop control var to enclosing scope (#4376) 2017-09-08 21:14:26 -07:00
argparse.in Hoist for loop control var to enclosing scope (#4376) 2017-09-08 21:14:26 -07:00
argparse.out use new logmsg and set --show in tests 2017-08-04 11:39:43 -07:00
bind.err Add separation of "preset" bindings 2018-09-30 16:54:56 +02:00
bind.expect Add till/repeat/reverse jump bindings 2018-08-18 14:42:29 -07:00
bind.expect.err Reset fish_bind_mode when changing fish_key_bindings 2014-09-18 15:46:17 -07:00
bind.expect.out Add till/repeat/reverse jump bindings 2018-08-18 14:42:29 -07:00
bind.in Add separation of "preset" bindings 2018-09-30 16:54:56 +02:00
bind.out Add separation of "preset" bindings 2018-09-30 16:54:56 +02:00
cd.err Teach cd completions about logical paths 2018-11-03 13:30:55 -07:00
cd.in Teach cd completions about logical paths 2018-11-03 13:30:55 -07:00
cd.out Teach cd completions about logical paths 2018-11-03 13:30:55 -07:00
commandline.expect Stop unescaping strings with commandline -b 2016-01-10 17:25:22 -08:00
commandline.expect.err Stop unescaping strings with commandline -b 2016-01-10 17:25:22 -08:00
commandline.expect.out Stop unescaping strings with commandline -b 2016-01-10 17:25:22 -08:00
complete.err Teach alias about wrap argument injection 2018-02-27 14:12:44 -08:00
complete.in Teach alias about wrap argument injection 2018-02-27 14:12:44 -08:00
complete.out Teach alias about wrap argument injection 2018-02-27 14:12:44 -08:00
count.err use new logmsg and set --show in tests 2017-08-04 11:41:51 -07:00
count.in use new logmsg and set --show in tests 2017-08-04 11:41:51 -07:00
count.out use new logmsg and set --show in tests 2017-08-04 11:41:51 -07:00
exit.expect Rename $pid (née %self) to $fish_pid 2018-03-24 11:54:27 -05:00
exit.expect.err correct handling of SIGHUP by interactive fish 2017-01-24 15:24:13 -08:00
exit.expect.out correct handling of SIGHUP by interactive fish 2017-01-24 15:24:13 -08:00
expansion.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
expansion.in Allow nested square brackets again 2018-11-22 17:57:27 -08:00
expansion.out Allow nested square brackets again 2018-11-22 17:57:27 -08:00
fish_opt.err use new logmsg and set --show in tests 2017-08-04 12:01:16 -07:00
fish_opt.in use new logmsg and set --show in tests 2017-08-04 12:01:16 -07:00
fish_opt.out use new logmsg and set --show in tests 2017-08-04 12:01:16 -07:00
fkr.expect fix race condition in fkr test 2016-12-19 17:44:54 -08:00
fkr.expect.err don't allow f-k-r to run if stdin/stdout not a tty 2016-06-26 21:51:00 -07:00
fkr.expect.out f-k-r should use the user's locale 2016-06-30 20:49:56 -07:00
function.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
function.in Reserve some builtin names 2018-02-25 21:29:24 +01:00
function.out Reserve some builtin names 2018-02-25 21:29:24 +01:00
functions.err implement means to learn about a functions source 2017-01-20 21:48:41 -08:00
functions.in fix tests 2018-11-13 21:54:41 +08:00
functions.out implement means to learn about a functions source 2017-01-20 21:48:41 -08:00
gen_output.fish Remove caret redirection 2018-04-01 13:48:21 -07:00
generic.expect add tests for a pipe at the end of the line 2018-02-18 13:01:38 -08:00
generic.expect.err Allow U+F8FF to be typed 2014-09-21 21:03:44 -07:00
generic.expect.out Allow U+F8FF to be typed 2014-09-21 21:03:44 -07:00
histfile.expect Rename FISH_HISTORY to fish_history 2017-09-24 14:07:45 +08:00
histfile.expect.err Make the history session configurable 2017-06-30 17:13:02 -07:00
histfile.expect.out Make the history session configurable 2017-06-30 17:13:02 -07:00
histfile.expect.status Make the history session configurable 2017-06-30 17:13:02 -07:00
history.err modify read to require at least one var 2017-07-20 13:07:30 -07:00
history.expect history expect tests: fix the tests. 2018-11-20 05:26:54 -08:00
history.expect.err correct handling of history args 2016-07-20 21:18:48 -07:00
history.expect.out mplement history search glob searches 2017-09-15 13:43:45 -07:00
history.in update history to use argparse 2017-07-16 15:13:39 -07:00
history.out make it hard to use history command incorrectly 2016-09-09 19:23:06 -07:00
history_sample_bash improve bash history importing 2017-05-20 21:03:31 -07:00
history_sample_corrupt1 Improve history robustness against corrupt files 2014-07-29 14:42:03 -07:00
history_sample_fish_1_x Support for importing fish 1.x's history and format, and also bash 2012-06-15 16:24:05 -07:00
history_sample_fish_2_0 Support for importing fish 1.x's history and format, and also bash 2012-06-15 16:24:05 -07:00
indent.err Implement tests for fish_indent 2014-12-23 15:46:47 -08:00
indent.in Teach fish_indent about escaped newlines 2018-05-07 21:40:53 -07:00
indent.out Teach fish_indent about escaped newlines 2018-05-07 21:40:53 -07:00
interactive.config remove some uses of $IFS 2017-07-25 12:44:26 -07:00
interactive.expect.rc don't allow f-k-r to run if stdin/stdout not a tty 2016-06-26 21:51:00 -07:00
interactive.fish Report duration of each test 2018-09-03 14:13:31 -07:00
invocation.sh Fix for bad-switch test failing on Darwin; system-specific output. 2017-06-29 21:00:08 -07:00
jobs.err split builtin bg into its own module 2017-06-16 21:01:56 -07:00
jobs.in Remove caret redirection 2018-04-01 13:48:21 -07:00
jobs.out Add tests for jobs -q 2018-03-04 15:33:36 -06:00
line-continuation.err fix handling of line continuation in keywords 2016-04-08 21:05:46 -07:00
line-continuation.in fix handling of line continuation in keywords 2016-04-08 21:05:46 -07:00
line-continuation.out fix handling of line continuation in keywords 2016-04-08 21:05:46 -07:00
locale.err remove unset vars from the environment 2016-06-15 22:10:11 -07:00
locale.in remove dependency on xxd 2017-01-31 22:10:53 -08:00
locale.out remove dependency on xxd 2017-01-31 22:10:53 -08:00
math.err Add 'round' function to builtin math 2018-12-01 13:25:00 -08:00
math.in Add 'round' function to builtin math 2018-12-01 13:25:00 -08:00
math.out Add 'round' function to builtin math 2018-12-01 13:25:00 -08:00
parameter_expansion.err Add tests for new parameter expansion features 2018-03-12 07:04:05 -05:00
parameter_expansion.in Fix parameter expansion tests on Travis macOS 2018-03-12 07:50:37 -05:00
parameter_expansion.out Add tests for new parameter expansion features 2018-03-12 07:04:05 -05:00
printf.err use a consistent ERANGE message 2017-02-20 18:43:13 -08:00
printf.in Remove caret redirection 2018-04-01 13:48:21 -07:00
printf.out correct printf handling of %x with long ints 2017-02-20 17:58:08 -08:00
psub.err return to psub --file being the default 2017-07-17 14:33:51 -07:00
psub.in Fix test hang when running under ninja 2017-12-21 15:48:48 -08:00
psub.out return to psub --file being the default 2017-07-17 14:33:51 -07:00
random.err implement an improved random command 2016-12-20 16:46:33 -08:00
random.in implement an improved random command 2016-12-20 16:46:33 -08:00
random.out implement an improved random command 2016-12-20 16:46:33 -08:00
read.err Fix unit tests for read to stdout behavior 2017-10-10 08:34:50 +02:00
read.expect Acquire tty if interactive when running builtins 2018-08-12 03:41:56 -07:00
read.expect.err Add a test harness for interactive behavior 2014-09-07 23:56:59 -07:00
read.expect.out Fix read tests to reflect updated arguments 2018-03-09 12:19:20 -06:00
read.in Fix read to stdout output appearing first 2018-04-10 21:45:28 +02:00
read.out Correct read behavior for unset values and update tests accordingly 2018-04-17 21:34:22 -05:00
realpath.err Revert "wrealpath: Fail for file/something" 2018-11-19 09:12:26 +01:00
realpath.in Revert "wrealpath: Fail for file/something" 2018-11-19 09:12:26 +01:00
realpath.out make fish's realpath compatible with GNU realpath 2016-10-04 20:19:44 -07:00
set.err Test setting readonly variables 2018-11-18 22:33:02 +01:00
set.in Test setting readonly variables 2018-11-18 22:33:02 +01:00
set.out Test setting readonly variables 2018-11-18 22:33:02 +01:00
setenv.err fix setenv and add unit tests 2017-04-05 15:31:13 -07:00
setenv.in fix setenv and add unit tests 2017-04-05 15:31:13 -07:00
setenv.out fix setenv and add unit tests 2017-04-05 15:31:13 -07:00
signals.expect Fix $pid -> $fish_pid in signals.expect 2018-03-24 12:15:58 -05:00
signals.expect.err correct handling of SIGHUP by interactive fish 2017-01-24 15:24:13 -08:00
signals.expect.out correct handling of SIGHUP by interactive fish 2017-01-24 15:24:13 -08:00
status.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
status.in Add status subcomannds: features and test-feature 2018-05-06 11:20:14 -07:00
status.out Add a qmark-noglob feature flag 2018-05-06 11:20:15 -07:00
string.err Implement PCRE2 escaping 2018-11-15 12:00:56 -06:00
string.in Rename string escape --style=pcre2 to string escape --style=regex 2018-11-16 20:22:06 -06:00
string.out Implement PCRE2 escaping 2018-11-15 12:00:56 -06:00
test.fish Report duration of each test 2018-09-03 14:13:31 -07:00
test1.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
test1.in source: Actually check if stdin is a tty, not just redirected 2018-11-26 23:48:19 +01:00
test1.out source: Return error instead of implicitly reading from tty 2018-10-22 21:22:27 +02:00
test2.err Add subdirectories 2005-09-20 23:31:55 +10:00
test2.in remove trialing spaces #2 2010-09-18 10:18:26 +08:00
test2.out Add subdirectories 2005-09-20 23:31:55 +10:00
test3.err Allow setting universal path variables 2018-10-27 01:05:00 -07:00
test3.in Correctly split path environment variables about colons 2018-10-27 15:20:32 -07:00
test3.out Correctly split path environment variables about colons 2018-10-27 15:20:32 -07:00
test4.err use new logmsg and set --show in tests 2017-08-04 13:36:51 -07:00
test4.in use new logmsg and set --show in tests 2017-08-04 13:36:51 -07:00
test4.out builtin_test: don't exit 1 for eval errors, add tests for big args 2018-12-16 14:51:26 -08:00
test5.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
test5.in Remove support for the ? wildcard 2018-03-31 16:54:50 -07:00
test5.out make testing on local servers hermetic 2016-02-25 17:16:36 -08:00
test6.err allow complete -d '' 2016-11-17 14:53:50 -08:00
test6.in Remove caret redirection 2018-04-01 13:48:21 -07:00
test6.out Add a new completion test for optional arguments 2016-12-21 15:46:46 -08:00
test7.err Add a test case for switch error code (issue #161) 2012-06-24 13:43:44 -07:00
test7.in Update tests for new type behavior 2014-07-13 19:11:29 -07:00
test7.out Finish rewriting detect_errors to use new parser. All tests now pass (!) 2013-12-12 18:18:07 -08:00
test8.err Execute the conditions of if and while statements outside of their block 2018-03-31 14:57:24 -07:00
test8.in Execute the conditions of if and while statements outside of their block 2018-03-31 14:57:24 -07:00
test8.out Execute the conditions of if and while statements outside of their block 2018-03-31 14:57:24 -07:00
test9.err Error message prefix: Prefix the message, not the context 2017-04-11 20:00:29 -07:00
test9.in return to psub --file being the default 2017-07-17 14:33:51 -07:00
test9.out return to psub --file being the default 2017-07-17 14:33:51 -07:00
test_cmdsub.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
test_cmdsub.in Rename FISH_READ_BYTE_LIMIT to fish_read_limit 2017-10-14 08:33:02 -07:00
test_cmdsub.out fix set --show of semi-empty var 2017-08-16 13:39:48 -07:00
test_util.fish remove some uses of $IFS 2017-07-25 12:44:26 -07:00
top.out Don't leave is_block in bad state after bad redirection 2014-09-30 17:06:56 -07:00
umask.err fix umask handling of symbolic modes 2017-03-28 16:28:24 -07:00
umask.in fix umask handling of symbolic modes 2017-03-28 16:28:24 -07:00
umask.out fix umask handling of symbolic modes 2017-03-28 16:28:24 -07:00
vars_as_commands.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
vars_as_commands.in Allow variables in commands 2018-09-01 12:00:56 -07:00
vars_as_commands.out Allow variables in commands 2018-09-01 12:00:56 -07:00
wait.expect Remove some of the wait tests 2018-09-15 11:07:29 +02:00
wait.expect.err add wait command 2017-11-16 10:48:21 -08:00
wait.expect.out add wait command 2017-11-16 10:48:21 -08:00
while.err Make while loops evaluate to the last executed command status 2019-01-20 16:41:59 -08:00
while.in Make while loops evaluate to the last executed command status 2019-01-20 16:41:59 -08:00
while.out Make while loops evaluate to the last executed command status 2019-01-20 16:41:59 -08:00
zero_based_array.err Revert "Update tests" 2018-11-28 06:27:21 -08:00
zero_based_array.in Correct misdetection of [001] as literal zero index 2018-10-15 14:11:37 -05:00
zero_based_array.out Correct misdetection of [001] as literal zero index 2018-10-15 14:11:37 -05:00