fish-shell/tests/abbr.in
2017-08-03 15:44:58 -07:00

71 lines
1.6 KiB
Fish

logmsg Test basic add and list of __abbr1
abbr __abbr1 alpha beta gamma
abbr | grep __abbr1
logmsg Erasing one that doesn\'t exist should do nothing
abbr --erase NOT_AN_ABBR
abbr | grep __abbr1
logmsg Adding existing __abbr1 should be idempotent
abbr __abbr1 alpha beta gamma
abbr | grep __abbr1
logmsg Replacing __abbr1 definition
abbr __abbr1 delta
abbr | grep __abbr1
logmsg __abbr1 -s and --show tests
abbr -s | grep __abbr1
abbr --show | grep __abbr1
logmsg Test erasing __abbr1
abbr -e __abbr1
abbr | grep __abbr1
logmsg Ensure we escape special characters on output
abbr '~__abbr2' '$xyz'
abbr | grep __abbr2
abbr -e '~__abbr2'
logmsg Ensure we handle leading dashes in abbreviation names properly
abbr -- '--__abbr3' 'xyz'
abbr | grep __abbr3
abbr -e -- '--__abbr3'
logmsg Test that an abbr word containing spaces is rejected
abbr "a b c" "d e f"
abbr | grep 'a b c'
logmsg Test renaming
abbr __abbr4 omega
abbr | grep __abbr5
abbr -r __abbr4 __abbr5
abbr | grep __abbr5
abbr -e __abbr5
abbr | grep __abbr4
logmsg Test renaming a nonexistent abbreviation
abbr -r __abbr6 __abbr
logmsg Test renaming to a abbreviation with spaces
abbr __abbr4 omega
abbr -r __abbr4 "g h i"
abbr -e __abbr4
logmsg Test renaming without arguments
abbr __abbr7 omega
abbr -r __abbr7
logmsg Test renaming with too many arguments
abbr __abbr8 omega
abbr -r __abbr8 __abbr9 __abbr10
abbr | grep __abbr8
abbr | grep __abbr9
abbr | grep __abbr10
logmsg Test renaming to existing abbreviation
abbr __abbr11 omega11
abbr __abbr12 omega12
abbr -r __abbr11 __abbr12
exit 0 # the last `abbr` command is expected to fail -- don't let that cause a test failure