34 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| describe 'a suggestion' do
 | |
|   let(:term_opts) { { width: 200 } }
 | |
|   let(:command) { "echo foobar" }
 | |
| 
 | |
|   around do |example|
 | |
|     with_history(command) { example.run }
 | |
|   end
 | |
| 
 | |
|   it 'is provided for any buffer length' do
 | |
|     session.send_string(command[0...-1])
 | |
|     wait_for { session.content }.to eq(command)
 | |
|   end
 | |
| 
 | |
|   context 'when ZSH_AUTOSUGGEST_BUFFER_MIN_SIZE is specified' do
 | |
|     let(:buffer_min_size) { 5 }
 | |
|     let(:options) { ["ZSH_AUTOSUGGEST_BUFFER_MIN_SIZE=#{buffer_min_size}"] }
 | |
| 
 | |
|     it 'is provided when the buffer is longer than the specified length' do
 | |
|       session.send_string(command[0...(buffer_min_size + 1)])
 | |
|       wait_for { session.content }.to eq(command)
 | |
|     end
 | |
| 
 | |
|     it 'is provided when the buffer is equal to the specified length' do
 | |
|       session.send_string(command[0...(buffer_min_size)])
 | |
|       wait_for { session.content }.to eq(command)
 | |
|     end
 | |
| 
 | |
|     it 'is not provided when the buffer is shorter than the specified length' do
 | |
|       session.send_string(command[0...(buffer_min_size - 1)])
 | |
|       wait_for { session.content }.to eq(command[0...(buffer_min_size - 1)])
 | |
|     end
 | |
|   end
 | |
| end
 |