summaryrefslogtreecommitdiff
path: root/home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb
diff options
context:
space:
mode:
authorTyler Murphy <tylerm@tylerm.dev>2023-09-04 23:21:01 -0400
committerTyler Murphy <tylerm@tylerm.dev>2023-09-04 23:21:01 -0400
commitdb49f683129771d95828b01594c69431a717e8e8 (patch)
treed2cb1c0b865e4d81ce81f9a3176b8ad93a864950 /home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb
downloaddotfiles-guix-db49f683129771d95828b01594c69431a717e8e8.tar.gz
dotfiles-guix-db49f683129771d95828b01594c69431a717e8e8.tar.bz2
dotfiles-guix-db49f683129771d95828b01594c69431a717e8e8.zip
guix
Diffstat (limited to 'home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb')
-rw-r--r--home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb b/home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb
new file mode 100644
index 0000000..c435f16
--- /dev/null
+++ b/home-config/zsh/zsh-autosuggestions/spec/strategies/match_prev_cmd_spec.rb
@@ -0,0 +1,34 @@
+require 'strategies/special_characters_helper'
+
+describe 'the `match_prev_cmd` strategy' do
+ let(:options) { ['ZSH_AUTOSUGGEST_STRATEGY=match_prev_cmd'] }
+
+ let(:history) { [
+ 'echo what',
+ 'ls foo',
+ 'echo what',
+ 'ls bar',
+ 'ls baz',
+ 'echo what'
+ ] }
+
+ it 'suggests the last matching history entry after the previous command' do
+ with_history(*history) do
+ session.send_string('ls')
+ wait_for { session.content }.to eq('ls bar')
+ end
+ end
+
+ context 'when ZSH_AUTOSUGGEST_HISTORY_IGNORE is set to a pattern' do
+ let(:options) { ['ZSH_AUTOSUGGEST_STRATEGY=match_prev_cmd', 'ZSH_AUTOSUGGEST_HISTORY_IGNORE="* bar"'] }
+
+ it 'does not make suggestions that match the pattern' do
+ with_history(*history) do
+ session.send_string('ls')
+ wait_for { session.content }.to eq('ls foo')
+ end
+ end
+ end
+
+ include_examples 'special characters'
+end