1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
proc setup {} {
assert_bash_exec "unalias -a"; # Remove all aliases
assert_bash_exec "alias foo=bar"
assert_bash_exec "alias bar='foo foo'"
save_env
}; # setup()
proc teardown {} {
assert_bash_exec "unalias -a"; # Remove all aliases
assert_env_unmodified
}; # teardown()
setup
set test "Tab should complete alias"
# Try completion
set cmd "alias "
assert_complete {bar foo} $cmd $test
sync_after_int
set test "Tab should complete alias at cursor position"
# Try completion
set cmd "alias foo"
append cmd \002\002\002; # \002 = ^B = Move cursor left in bash emacs mode
send "$cmd\t"
expect {
-re "^alias foo\b\b\b\r\nbar +foo *\r\n/@alias foo\b\b\b$" { pass "$test" }
-re "^alias foo\b\b\bfoo=foo\b\b\b$" { fail "$test: Wrong cursor position" }
-re /@ { unresolved "$test" }
default { unresolved "$test" }
}; # expect
sync_after_int
teardown
|