fish-shell/tests/checks
Fabian Boehm a6c36a014c Return a falsey status if the last -c command has a parse error
This makes `fish -c begin` fail with a status of 127 - it already
printed a syntax error so that was weird. (127 was the status for
syntax errors when piping to fish, so we stay consistent with that)

We allow multiple `-c` commands, and this will return the regular
status if the last `-c` succeeded.

This is fundamentally an extremely weird situation but this is the
simple targeted fix - we did nothing, unsuccessfully, so we should
fail.

Things to consider in future:

1. Return something better than 127 - that's the status for "unknown
command"!
2. Fail after a `-c` failed, potentially even checking all of them
before executing the first?

Fixes #9888
2023-07-12 18:06:34 +02:00
..
broken-config/fish Port config tests to littlecheck 2019-06-25 22:31:06 +02:00
abbr.fish abbr: Clarify universal variable message 2023-01-21 16:53:59 +01:00
alias.fish Add the possibility to ignore arguments in alliases (#9199) 2022-09-11 09:55:11 +02:00
andandoror.fish Update tests for changed error output 2021-11-03 22:54:55 -07:00
andor.fish Don't skip caret for some errors 2022-08-12 18:38:47 +02:00
argparse.fish tests/argparse: Use set -l 2022-06-27 17:50:40 +02:00
bad-option.fish Fix typo in bad options test 2020-02-08 13:30:48 +01:00
basic.fish Return a falsey status if the last -c command has a parse error 2023-07-12 18:06:34 +02:00
bind.fish Clarify that the variable/mode *name* is invalid 2022-04-08 16:38:46 +02:00
braces.fish Reindent functions to remove useless quotes 2020-03-09 19:46:43 +01:00
broken-config.fish Add acceptable errors to tests 2022-08-12 18:38:47 +02:00
builtinbuiltin.fish Update tests for changed error output 2021-11-03 22:54:55 -07:00
caller-exit.fish functions: list caller-exit handlers correctly 2023-02-18 18:35:40 +01:00
caller-observer.fish Fix up --on-job-exit caller 2020-02-08 16:23:25 -08:00
cd.fish completions: Offer ../ and ./ again (#9477) 2023-01-16 10:05:01 +01:00
check-all-fish-files.fish Revert "Revert "Speed up check-all-fish-files when executed locally"" 2021-03-06 17:13:20 -06:00
check-completions.fish source the files instead 2022-04-21 17:40:25 +02:00
check-translations.fish Add a test to check format strings in translations 2021-10-18 17:02:17 +02:00
cmdsub-limit.fish Add acceptable errors to tests 2022-08-12 18:38:47 +02:00
cmdsub.fish Fix spurious syntax error on escaped $@ inside quoted command substitution 2022-04-03 16:18:47 +02:00
colon-delimited-var.fish Clean up how PATH and CDPATH munging occurs 2019-11-02 16:48:08 -07:00
command-1.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
command-2.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
command-not-found.fish Pass location of the *command* node without decorators 2022-08-12 18:38:47 +02:00
command-vars-persist.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
commandline.fish commandline: Add --is-valid option (#8142) 2021-08-14 11:29:22 +02:00
complete-group-order.fish Test complete builtin sort of (sorted + unsorted) completions 2022-10-31 16:52:44 -05:00
complete.fish __fish_complete_directories: Use an empty command as the dummy 2023-02-14 17:09:58 +01:00
complete_directories.fish __fish_complete_directories: Remove --foo= from token 2023-03-27 22:57:34 +02:00
contains_opt.fish Reindent functions to remove useless quotes 2020-03-09 19:46:43 +01:00
count.fish Port count test to littlecheck 2019-06-26 21:19:40 +02:00
deep-cmdsub.fish Add a test for deep command substitutions 2020-01-18 11:50:50 -08:00
directory-redirect.fish Fix tests 2020-01-19 15:07:06 +01:00
disown-parent.fish Add a tricky test to verify disowning an in-flight job 2019-12-08 11:44:21 -08:00
empty.fish Run fish_indent on all our fish scripts 2020-01-13 20:34:22 +01:00
env.fish Correctly mark a node when erasing an exported variable 2019-06-28 11:22:49 -07:00
eval.fish Add more tests 2022-08-12 18:38:47 +02:00
exec.fish Improve error for redirections to invalid paths 2021-11-20 17:44:05 +01:00
exit-status-with-closing-stderr.fish Run fish_indent on all our fish scripts 2020-01-13 20:34:22 +01:00
expansion.fish fixup! 2 2022-11-15 19:05:18 +01:00
fds.fish tests/fd: Error out early if more fds are open 2022-06-17 09:33:42 +02:00
features-ampersand-nobg-in-token1.fish Teach fish_indent about our feature flags 2021-07-23 22:58:51 +02:00
features-nocaret1.fish Force stderr-nocaret feature flag on 2022-04-15 13:42:38 +02:00
features-nocaret2.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
features-nocaret3.fish Force stderr-nocaret feature flag on 2022-04-15 13:42:38 +02:00
features-nocaret4.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
features-qmark1.fish Clean up more mktemp usage residue 2022-09-23 11:05:58 -05:00
features-qmark2.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
features-string-backslashes-off.fish tests, CHANGELOG: regex-easyesc 2019-08-13 22:56:31 -07:00
features-string-backslashes.fish tests, CHANGELOG: regex-easyesc 2019-08-13 22:56:31 -07:00
fish_add_path.fish Fix tests 2022-05-17 17:21:42 +02:00
fish_user_paths.fish Deduplicate $fish_user_paths automatically 2021-07-14 16:37:30 +02:00
for.fish Don't fire variable set event before entering a for-loop 2021-10-28 16:32:58 +02:00
function-definition.fish Properly print leading comments and indentation in functions 2020-01-03 14:40:28 -08:00
function.fish functions --copy: store file and lineno (#9542) 2023-02-13 09:59:28 -06:00
functions.fish functions --copy: store file and lineno (#9542) 2023-02-13 09:59:28 -06:00
git.fish tests/git: Also give the email to stash 2023-02-15 20:11:46 +01:00
glob.fish tests: Don't rely on $HOME existing 2020-12-29 12:48:11 +01:00
history.fish history: Refuse to merge in private mode 2022-07-01 20:10:18 +02:00
indent.fish fish_indent: handle tokens with trailing escaped newlines 2021-08-01 18:59:45 +02:00
init-command-2.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
init-command-mix-ordering.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
init-command-mix.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
init-command.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
init-unreadable-cwd.fish Ignore unreadable cwd error harder 2020-02-14 20:09:07 +01:00
invocation.fish Don't skip caret for some errors 2022-08-12 18:38:47 +02:00
job-control-noninteractive.fish tests: Remove unnecessary status fish-path 2021-03-10 18:04:04 +01:00
job-control-not-a-tty.fish terminal_maybe_give_to_job to stop returning error on ENOTTY 2020-04-18 16:26:54 -07:00
job-ids.fish tests/job-ids: Wait for job to die 2020-01-25 14:06:34 +01:00
jobs-are-escaped.fish [tests] added test for escaped job summary 2023-07-10 18:38:26 +02:00
jobs.fish Test that --on-job-exit functions run even if the job has already exited 2021-10-28 10:02:48 -07:00
line-continuation.fish Reformat fish scripts with escaped newline changes to fish_indent 2020-03-15 21:01:11 +01:00
line-number.fish Update tests for changed error output 2021-11-03 22:54:55 -07:00
locale-numeric.fish Move the numeric locale tests to a different file 2021-08-17 15:36:07 +02:00
locale.fish Make \x the same as \X 2022-10-09 15:24:01 +02:00
loops.fish Add acceptable errors to tests 2022-08-12 18:38:47 +02:00
math.fish Fix read_blocked 2023-04-17 17:28:24 +02:00
no-config.fish Only use DATADIR in $fish_function_path if no-config is used 2021-05-01 18:59:25 +02:00
no-execute.fish Add acceptable errors to tests 2022-08-12 18:38:47 +02:00
noshebang.fish Disable shebangless script tests in CI with sanitizers 2022-12-02 17:32:52 -08:00
not.fish Declare that two "not" keywords cancel each other out 2021-12-28 19:32:30 +01:00
nuls.fish Truncate builtin arguments on NUL 2023-06-24 21:26:44 +02:00
path.fish fix path --null-out 2022-10-05 17:25:00 +02:00
pipeline-pgroup.fish tests: Pass $fish as a variable in some cases 2020-10-06 17:40:22 +02:00
pipestatus.fish Improve error for redirections to invalid paths 2021-11-20 17:44:05 +01:00
printf.fish Revert "Revert "Implement builtin_printf in Rust"" 2023-04-06 15:54:09 -07:00
prompt.fish prompt_pwd: full-dirs set to 0 means not even last component is safe 2021-08-09 17:42:00 +02:00
psub.fish Reindent functions to remove useless quotes 2020-03-09 19:46:43 +01:00
random.fish Port random to rust 2023-02-19 21:01:46 +01:00
rc-returned.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
read.fish read: Error on read-only variables 2023-01-13 17:56:28 +01:00
realpath.fish realpath: Use physical PWD 2022-07-18 20:45:30 +02:00
redirect.fish Print "^^" for a 2-wide error 2022-08-12 18:38:47 +02:00
regex-import.fish Correct behavior of string match variable import with multiple arguments 2021-04-20 15:15:52 -07:00
return.fish Use -- before seq for negative numbers 2022-10-23 13:53:36 -07:00
scoping.fish Update tests for changed error output 2021-11-03 22:54:55 -07:00
self-signal-usr1.fish Stop storing block_io in job_t 2019-12-11 16:34:20 -08:00
set.fish builtin set --show: put read-only part on same line. 2022-11-12 06:21:36 -08:00
setenv.fish Port setenv tests to littlecheck 2019-07-09 10:02:50 -07:00
sigint.fish tests: Remove unnecessary status fish-path 2021-03-10 18:04:04 +01:00
sigint2.fish Disable job control inside command substitutions 2021-08-18 22:20:03 +08:00
signal.fish Fix some tests for OpenIndiana 2021-06-24 18:17:10 +02:00
slices.fish Revert "Disallow escaped characters in variable expansion" 2021-06-10 16:46:17 +02:00
stack-overflow.fish Make CALL_STACK_LIMIT_EXCEEDED_ERR_MSG more generic 2022-10-25 13:40:21 -05:00
status-command.fish Skip some tests on OpenBSD 2021-06-24 20:46:03 +02:00
status-value.fish builtins: Don't crash for negative return values 2023-03-14 10:53:35 +01:00
status.fish functions --copy: store file and lineno (#9542) 2023-02-13 09:59:28 -06:00
string-advanced.fish Test string replace transforms 2021-03-21 10:03:35 +01:00
string.fish Move NUL-handling tests to their own file 2023-06-24 21:26:44 +02:00
switch.fish Add acceptable errors to tests 2022-08-12 18:38:47 +02:00
symlinks-not-overwritten.fish Clean up more mktemp usage residue 2022-09-23 11:05:58 -05:00
syntax-error-location.fish Fix tests 2022-12-22 17:34:10 +01:00
test.fish Remove superfluous CHECK lines 2022-09-21 18:37:38 +02:00
threads.fish Reindent functions to remove useless quotes 2020-03-09 19:46:43 +01:00
time.fish Add more tests 2022-08-12 18:38:47 +02:00
tmux-abbr.fish Revert "Skip tmux tests on Github Actions macOS" 2022-06-12 14:24:55 -07:00
tmux-bind.fish Revert "Skip tmux tests on Github Actions macOS" 2022-06-12 14:24:55 -07:00
tmux-complete.fish tests: More slack for ASAN 2023-05-11 22:14:12 +02:00
tmux-history-search.fish reader: make Escape during history search restore commandline again 2023-01-17 09:31:04 +01:00
tmux-prompt.fish Revert "Skip tmux tests on Github Actions macOS" 2022-06-12 14:24:55 -07:00
trace.fish Change fish_trace prefix to "->" instead of plusses 2020-12-11 21:24:33 +01:00
trap.fish Allow trapping SIGINT and SIGTERM in scripts 2022-05-28 17:44:13 -07:00
trap_print.fish Add regression test for trap -p 2022-10-24 15:36:02 -05:00
type.fish Rewrite the type builtin in rust 2023-04-16 11:27:08 +02:00
ulimit.fish ulimit: add basic tests 2022-03-24 10:23:04 +08:00
umask.fish Port umask tests to littlecheck 2020-03-16 21:21:10 +01:00
variable-assignment.fish Don't skip caret for some errors 2022-08-12 18:38:47 +02:00
vars_as_commands.fish Add length to the parse_util syntax errors 2022-08-12 18:38:47 +02:00
version.fish Port most of the invocation tests to littlecheck 2019-06-25 20:56:29 +02:00
wait.fish Add a test and CHANGELOG fix for #9096 2022-07-30 10:14:19 -07:00
wildcard.fish Remove TMPDIR dependency from tests/ 2021-08-29 08:56:12 +02:00
wraps.fish Sort and deduplicate output of complete -C 2022-10-31 16:52:36 -05:00
zero_based_array.fish Add more tests for literal zero indexes 2021-08-15 13:48:41 -05:00