73 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
| #!/usr/bin/env zsh
 | |
| 
 | |
| source "${0:a:h}/test_helper.zsh"
 | |
| 
 | |
| oneTimeSetUp() {
 | |
| 	source_autosuggestions
 | |
| }
 | |
| 
 | |
| testEscapeCommand() {
 | |
| 	assertEquals \
 | |
| 		'Did not escape single backslash' \
 | |
| 		'\\' \
 | |
| 		"$(_zsh_autosuggest_escape_command '\')"
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not escape two backslashes' \
 | |
| 		'\\\\' \
 | |
| 		"$(_zsh_autosuggest_escape_command '\\')"
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not escape parentheses' \
 | |
| 		'\(\)' \
 | |
| 		"$(_zsh_autosuggest_escape_command '()')"
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not escape square brackets' \
 | |
| 		'\[\]' \
 | |
| 		"$(_zsh_autosuggest_escape_command '[]')"
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not escape pipe' \
 | |
| 		'\|' \
 | |
| 		"$(_zsh_autosuggest_escape_command '|')"
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not escape star' \
 | |
| 		'\*' \
 | |
| 		"$(_zsh_autosuggest_escape_command '*')"
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not escape question mark' \
 | |
| 		'\?' \
 | |
| 		"$(_zsh_autosuggest_escape_command '?')"
 | |
| }
 | |
| 
 | |
| testPrevCommand() {
 | |
| 	set_history <<-'EOF'
 | |
| 		ls foo
 | |
| 		ls bar
 | |
| 		ls baz
 | |
| 	EOF
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not output the last command' \
 | |
| 		'ls baz' \
 | |
| 		"$(_zsh_autosuggest_prev_command)"
 | |
| 
 | |
| 	set_history <<-'EOF'
 | |
| 		ls foo
 | |
| 		ls bar
 | |
| 		ls baz
 | |
| 		ls quux
 | |
| 		ls foobar
 | |
| 	EOF
 | |
| 
 | |
| 	assertEquals \
 | |
| 		'Did not output the last command' \
 | |
| 		'ls foobar' \
 | |
| 		"$(_zsh_autosuggest_prev_command)"
 | |
| }
 | |
| 
 | |
| run_tests "$0"
 |