Přemysl Eric Janouch
bc8867eb22
IRCv3 capabilities broke it a bit. Also change it so that it doesn't destroy existing configuration.
53 lines
889 B
Plaintext
Executable File
53 lines
889 B
Plaintext
Executable File
#!/usr/bin/expect -f
|
|
# Very basic end-to-end testing for CI
|
|
set tempdir [exec mktemp -d]
|
|
set ::env(XDG_CONFIG_HOME) $tempdir
|
|
|
|
# Run the daemon to test against
|
|
system ./xD --write-default-cfg
|
|
spawn ./xD -d
|
|
|
|
# 10 seconds is a bit too much
|
|
set timeout 5
|
|
|
|
spawn ./xC
|
|
|
|
# Fuck this Tcl shit, I want the exit code
|
|
expect_after {
|
|
eof {
|
|
puts ""
|
|
puts "Child exited prematurely"
|
|
exit 1
|
|
}
|
|
}
|
|
|
|
# Connect to the daemon
|
|
send "/server add localhost\n"
|
|
expect "]"
|
|
send "/set servers.localhost.addresses = \"localhost\"\n"
|
|
expect "Option changed"
|
|
send "/disconnect\n"
|
|
expect "]"
|
|
send "/connect\n"
|
|
expect "Welcome to"
|
|
|
|
# Try some chatting
|
|
send "/join #test\n"
|
|
expect "has joined"
|
|
send "Hello\n"
|
|
expect "Hello"
|
|
|
|
# Attributes
|
|
send "\x1bmbBold text! \x1bmc0,5And colors.\n"
|
|
expect "]"
|
|
|
|
# Try basic commands
|
|
send "/set\n"
|
|
expect "]"
|
|
send "/help\n"
|
|
expect "]"
|
|
|
|
# Quit
|
|
send "/quit\n"
|
|
expect "Shutting down"
|