mirror of
https://github.com/zsh-users/zsh-autosuggestions.git
synced 2024-11-18 09:51:06 +01:00
132 lines
1.5 KiB
Bash
Executable file
132 lines
1.5 KiB
Bash
Executable file
#!/usr/bin/env zsh
|
|
|
|
source "${0:a:h}/../test_helper.zsh"
|
|
|
|
oneTimeSetUp() {
|
|
source_autosuggestions
|
|
|
|
ZSH_AUTOSUGGEST_STRATEGY=match_prev_cmd
|
|
}
|
|
|
|
testNoMatch() {
|
|
set_history <<-'EOF'
|
|
ls foo
|
|
ls bar
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'foo' \
|
|
''
|
|
|
|
assertSuggestion \
|
|
'ls q' \
|
|
''
|
|
}
|
|
|
|
testBasicMatches() {
|
|
set_history <<-'EOF'
|
|
ls foo
|
|
ls bar
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'ls f' \
|
|
'ls foo'
|
|
|
|
assertSuggestion \
|
|
'ls b' \
|
|
'ls bar'
|
|
}
|
|
|
|
testMostRecentMatch() {
|
|
set_history <<-'EOF'
|
|
ls foo
|
|
cd bar
|
|
ls baz
|
|
cd quux
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'ls' \
|
|
'ls baz'
|
|
|
|
assertSuggestion \
|
|
'cd' \
|
|
'cd quux'
|
|
}
|
|
|
|
testBackslash() {
|
|
set_history <<-'EOF'
|
|
echo "hello\nworld"
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'echo "hello\' \
|
|
'echo "hello\nworld"'
|
|
}
|
|
|
|
testDoubleBackslash() {
|
|
set_history <<-'EOF'
|
|
echo "\\"
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'echo "\\' \
|
|
'echo "\\"'
|
|
}
|
|
|
|
testTilde() {
|
|
set_history <<-'EOF'
|
|
cd ~/something
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'cd' \
|
|
'cd ~/something'
|
|
|
|
assertSuggestion \
|
|
'cd ~' \
|
|
'cd ~/something'
|
|
|
|
assertSuggestion \
|
|
'cd ~/s' \
|
|
'cd ~/something'
|
|
}
|
|
|
|
testParentheses() {
|
|
set_history <<-'EOF'
|
|
echo "$(ls foo)"
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'echo "$(' \
|
|
'echo "$(ls foo)"'
|
|
}
|
|
|
|
testSquareBrackets() {
|
|
set_history <<-'EOF'
|
|
echo "$history[123]"
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'echo "$history[' \
|
|
'echo "$history[123]"'
|
|
}
|
|
|
|
testMatchMostRecentAfterPreviousCmd() {
|
|
set_history <<-'EOF'
|
|
echo what
|
|
ls foo
|
|
ls bar
|
|
echo what
|
|
ls baz
|
|
ls quux
|
|
echo what
|
|
EOF
|
|
|
|
assertSuggestion \
|
|
'ls' \
|
|
'ls baz'
|
|
}
|
|
|
|
run_tests "$0"
|