mirror of
https://github.com/zsh-users/zsh-autosuggestions.git
synced 2024-11-18 09:51:06 +01:00
86 lines
1.2 KiB
Bash
86 lines
1.2 KiB
Bash
|
#!/usr/bin/env zsh
|
||
|
|
||
|
source "${0:a:h}/test_helper.zsh"
|
||
|
|
||
|
oneTimeSetUp() {
|
||
|
source_autosuggestions
|
||
|
}
|
||
|
|
||
|
assertBackslashSuggestion() {
|
||
|
set_history <<-'EOF'
|
||
|
echo "hello\nworld"
|
||
|
EOF
|
||
|
|
||
|
assertSuggestion \
|
||
|
'echo "hello\' \
|
||
|
'echo "hello\nworld"'
|
||
|
}
|
||
|
|
||
|
assertDoubleBackslashSuggestion() {
|
||
|
set_history <<-'EOF'
|
||
|
echo "\\"
|
||
|
EOF
|
||
|
|
||
|
assertSuggestion \
|
||
|
'echo "\\' \
|
||
|
'echo "\\"'
|
||
|
}
|
||
|
|
||
|
assertTildeSuggestion() {
|
||
|
set_history <<-'EOF'
|
||
|
cd ~/something
|
||
|
EOF
|
||
|
|
||
|
assertSuggestion \
|
||
|
'cd' \
|
||
|
'cd ~/something'
|
||
|
|
||
|
assertSuggestion \
|
||
|
'cd ~' \
|
||
|
'cd ~/something'
|
||
|
|
||
|
assertSuggestion \
|
||
|
'cd ~/s' \
|
||
|
'cd ~/something'
|
||
|
}
|
||
|
|
||
|
assertParenthesesSuggestion() {
|
||
|
set_history <<-'EOF'
|
||
|
echo "$(ls foo)"
|
||
|
EOF
|
||
|
|
||
|
assertSuggestion \
|
||
|
'echo "$(' \
|
||
|
'echo "$(ls foo)"'
|
||
|
}
|
||
|
|
||
|
assertSquareBracketsSuggestion() {
|
||
|
set_history <<-'EOF'
|
||
|
echo "$history[123]"
|
||
|
EOF
|
||
|
|
||
|
assertSuggestion \
|
||
|
'echo "$history[' \
|
||
|
'echo "$history[123]"'
|
||
|
}
|
||
|
|
||
|
testSpecialCharsForAllStrategies() {
|
||
|
local strategies
|
||
|
strategies=(
|
||
|
"default"
|
||
|
"match_prev_cmd"
|
||
|
)
|
||
|
|
||
|
for s in $strategies; do
|
||
|
ZSH_AUTOSUGGEST_STRATEGY="$s"
|
||
|
|
||
|
assertBackslashSuggestion
|
||
|
assertDoubleBackslashSuggestion
|
||
|
assertTildeSuggestion
|
||
|
assertParenthesesSuggestion
|
||
|
assertSquareBracketsSuggestion
|
||
|
done
|
||
|
}
|
||
|
|
||
|
run_tests "$0"
|