# vim: set filetype=expect: # # General tests that don't belong elsewhere spawn $fish expect_prompt # ensure the Apple key () is typeable send_line "echo " expect_prompt "" {} unmatched { puts stderr "Couldn't type apple key ()" } # check that history is returned in the right order (#2028) # this hist_command nonsense is the cleanest way to send the $ char set hist_command "echo \$history\[1\]" # first send 'echo stuff' send_line "echo stuff" expect_prompt "stuff" {} unmatched { puts stderr "Couldn't find expected output 'stuff'" } # last history item should be 'echo stuff' send_line $hist_command expect_prompt "echo stuff" {} unmatched { puts stderr "Couldn't find expected output 'echo stuff'" } # last history command should be the one that printed the history send_line $hist_command expect_prompt -re {echo .history.*} {} unmatched { puts stderr "Couldn't find expected output $hist_command" } # Backslashes at end of comments (#1255) # This backslash should NOT cause the line to continue send_line "echo -n #comment\\" expect_prompt # a pipe at the end of the line (#1285) send_line "echo hoge |\n cat" expect_prompt "hoge" {} unmatched { puts stderr "Error with a pipe at the end of the line" } send_line "echo hoge | \n cat" expect_prompt "hoge" {} unmatched { puts stderr "Error with a pipe at the end of the line with whitespaces" } send_line "echo hoge 2>| \n cat" expect_prompt "hoge" {} unmatched { puts stderr "Error with a pipe with redirection at the end of the line" } send_line "echo hoge >| \n cat" expect_prompt "hoge" {} unmatched { puts stderr "Error with a pipe with redirection at the end of the line" } send_line "source; or echo failed" expect_prompt "failed" {} unmatched { puts stderr "Error with sourcing from the terminal" }