log_file -a $tt/expect.log
spawn -nottycopy \
-w3m -config /dev/null -o cgi_bin=$pwd/tests file:///cgi-bin/wrap
+w3m -config /dev/null -o cgi_bin=$pwd/tests file:///cgi-bin/wrap/Tsuffix
proc timeout-abort {} {
send_log "\r\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
elog -re $str
}
-etxt {You need to log in}
-etxt {Source available}
+proc epage {str} {
+ etxt $str
+}
+
+epage {You need to log in}
+
+proc fillformfield {value} {
+ send "\t\r$value\r"
+}
+
+proc submitform-expect {wanttxt} {
+ send "\r"
+ etxt "loading file"
+ epage $wanttxt
+}
+
+proc loginas {user {password sesame} {wanttxt ACCESSGRANTED}} {
+ fillformfield $user
+ fillformfield $password
+ send "\t"
+ submitform-expect $wanttxt
+}
+
+loginas alice bogus "wrong password"
+
+loginas alice
+
+etxt {path = '/Tsuffix'}
+
+send "/Make worms\r"
+submitform-expect "MAKING-worms"
+
+send "/Logout\r"
+submitform-expect "You have been logged out"
+
+send "B\x10/Make sponges\r"
+submitform-expect "You need to log in"
+
+loginas bob
+
+send "/Logout\r"
+submitform-expect "You have been logged out"
+
+send "/Log in again\r"
+submitform-expect "need to log in"
+
+loginas bob
-send "\t\ralice\r\t\rbogus\r\t\r"
-etxt "loading file"
-etxt "wrong password"
+send "BBB\x10/Make sponges\r"
+submitform-expect "Login session interrupted"
puts ok