fish-shell/tests
Kurtis Rader ee1d310651 Implement history search --reverse (#4375)
* Implement `history search --reverse`

It should be possible to have `history search` output ordered oldest to
newest like nearly every other shell including bash, ksh, zsh, and csh.
We can't make this the default because too many people expect the
current behavior. This simply makes it possible for people to define
their own abbreviations or functions that provide behavior they are
likely used to if they are transitioning to fish from another shell.

This also fixes a bug in the `history` function with respect to how it
handles the `-n` / `--max` flag.

Fixes #4354

* Fix comment for format_history_record()
2017-09-14 15:44:17 -07:00
..
invocation Fix for bad-switch test failing on Darwin; system-specific output. 2017-06-29 21:00:08 -07:00
test_functions remove the now unused show test util function 2017-08-03 22:02:06 -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 improve __fish_complete_directories function 2017-04-11 13:45:53 -07: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
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 limit bind mode names to the rules for var names 2017-04-22 20:33:56 -07:00
bind.expect fix bug I introduced by previous squash merge 2017-04-17 21:23:03 -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 bind --list-modes option 2017-03-20 16:42:53 +01:00
bind.in limit bind mode names to the rules for var names 2017-04-22 20:33:56 -07:00
bind.out limit bind mode names to the rules for var names 2017-04-22 20:33:56 -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
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 Improved warning message when exiting with jobs still active 2017-08-14 18:18:09 -07: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 use new logmsg and set --show in tests 2017-08-03 21:37:02 -07:00
expansion.in use new logmsg and set --show in tests 2017-08-03 21:37:02 -07:00
expansion.out use new logmsg and set --show in tests 2017-08-03 21:37:02 -07: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 use new logmsg and set --show in tests 2017-08-03 22:02:06 -07:00
function.in use new logmsg and set --show in tests 2017-08-03 22:02:06 -07:00
function.out fix set --show output 2017-08-04 17:08:25 -07:00
functions.err implement means to learn about a functions source 2017-01-20 21:48:41 -08:00
functions.in rewrite abbr function 2017-08-03 14:35:06 -07:00
functions.out implement means to learn about a functions source 2017-01-20 21:48:41 -08:00
gen_output.fish Don't leave is_block in bad state after bad redirection 2014-09-30 17:06:56 -07:00
generic.expect Treat comments ending in backslashes as not continuing onto the next line 2015-05-02 18:22:20 -07: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 don't import bash history if not default fish hist 2017-06-30 20:24:55 -07: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 Implement history search --reverse (#4375) 2017-09-14 15:44:17 -07:00
history.expect.err correct handling of history args 2016-07-20 21:18:48 -07:00
history.expect.out Fix indexing of $history 2017-08-25 20:28:45 -05: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 enhance fish_indent to normalize keywords 2016-04-10 18:40:11 -07:00
indent.out enhance fish_indent to normalize keywords 2016-04-10 18:40:11 -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 remove dependency on xxd 2017-01-31 22:10:53 -08: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 split builtin bg into its own module 2017-06-16 21:01:56 -07:00
jobs.out implement disown builtin 2017-04-29 19:20:03 +08: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 Implement support for bare vars by math 2017-08-23 20:41:45 -07:00
math.in Implement support for bare vars by math 2017-08-23 20:41:45 -07:00
math.out Implement support for bare vars by math 2017-08-23 20:41:45 -07:00
printf.err use a consistent ERANGE message 2017-02-20 18:43:13 -08:00
printf.in correct printf handling of %x with long ints 2017-02-20 17:58:08 -08: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 return to psub --file being the default 2017-07-17 14:33:51 -07: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 replace var_entry_t with env_var_t 2017-08-14 18:18:09 -07:00
read.expect Capture read command contents without displaying it via a silent flag. 2017-04-11 19:06:48 -07:00
read.expect.err Add a test harness for interactive behavior 2014-09-07 23:56:59 -07:00
read.expect.out Capture read command contents without displaying it via a silent flag. 2017-04-11 19:06:48 -07:00
read.in change env_var_t to a vector of strings 2017-08-18 16:24:30 -07:00
read.out replace var_entry_t with env_var_t 2017-08-14 18:18:09 -07:00
realpath.err make fish's realpath compatible with GNU realpath 2016-10-04 20:19:44 -07:00
realpath.in make fish's realpath compatible with GNU realpath 2016-10-04 20:19:44 -07:00
realpath.out make fish's realpath compatible with GNU realpath 2016-10-04 20:19:44 -07:00
set.err Fix set --local when var is not in local scope 2017-08-19 21:39:21 -07:00
set.in Fix set --local when var is not in local scope 2017-08-19 21:39:21 -07:00
set.out Fix set --local when var is not in local scope 2017-08-19 21:39:21 -07: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 correct handling of SIGHUP by interactive fish 2017-01-24 15:24:13 -08: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 Do not redirect to / in status.in/err test. 2017-08-17 10:22:30 -07:00
status.in Do not redirect to / in status.in/err test. 2017-08-17 10:22:30 -07:00
status.out implement status function when in a breakpoint 2017-06-23 22:14:21 -07:00
string.err use new logmsg and set --show in tests 2017-08-04 12:51:48 -07:00
string.in use new logmsg and set --show in tests 2017-08-04 12:51:48 -07:00
string.out use new logmsg and set --show in tests 2017-08-04 12:51:48 -07:00
test.fish always define argv for scripts 2017-07-03 16:58:14 -07:00
test1.err Hoist for loop control var to enclosing scope (#4376) 2017-09-08 21:14:26 -07:00
test1.in Hoist for loop control var to enclosing scope (#4376) 2017-09-08 21:14:26 -07:00
test1.out Hoist for loop control var to enclosing scope (#4376) 2017-09-08 21:14:26 -07: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 Add subdirectories 2005-09-20 23:31:55 +10:00
test3.in change env_var_t to a vector of strings 2017-08-18 16:24:30 -07:00
test3.out Comment and test that we shouldn't copy for blocks 2017-07-20 18:25:18 -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 use new logmsg and set --show in tests 2017-08-04 13:36:51 -07:00
test5.err Error message prefix: Prefix the message, not the context 2017-04-11 20:00:29 -07:00
test5.in make testing on local servers hermetic 2016-02-25 17:16:36 -08: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 Add a new completion test for optional arguments 2016-12-21 15:46:46 -08: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 implement set --append and set --prepend 2017-08-04 17:23:24 -07:00
test8.in implement set --append and set --prepend 2017-08-04 17:23:24 -07:00
test8.out implement set --append and set --prepend 2017-08-04 17:23: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 use new logmsg and set --show in tests 2017-08-03 21:25:20 -07:00
test_cmdsub.in use new logmsg and set --show in tests 2017-08-03 20:56:14 -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 Error message prefix: Prefix the message, not the context 2017-04-11 20:00:29 -07:00
vars_as_commands.in don't print internal token in error message 2016-07-10 20:02:39 -07:00
vars_as_commands.out don't print internal token in error message 2016-07-10 20:02:39 -07:00