From 4c0f92e795caa1213816616fb8c89b4930151d6e Mon Sep 17 00:00:00 2001 From: Per Cederqvist <ceder@lysator.liu.se> Date: Tue, 14 Oct 2003 20:44:45 +0000 Subject: [PATCH] Updated for new break/cont semantics. --- demo/df.py | 13 +++---------- demo/dualftp.py | 14 ++++---------- demo/ftp.py | 11 ++++------- demo/ftp.pyex | 9 ++++----- demo/ftptrad.py | 2 -- demo/telnet.py | 5 +++++ 6 files changed, 20 insertions(+), 34 deletions(-) diff --git a/demo/df.py b/demo/df.py index c9ee012..987ea53 100644 --- a/demo/df.py +++ b/demo/df.py @@ -7,27 +7,20 @@ x = controller() while x.loop(): if x.re(df, "Filesystem.*\n"): print "Header:", df.match.group() + break x = controller() while x.loop(): if x.re(df, "^/.* .*(?=\n)"): print "Normal line:", df.match.group() - x.cont() - continue elif x.re(df, "^/.*(?=\n)"): print "Mount point only:", df.match.group() - x.cont() - continue elif x.re(df, "^ .*(?=\n)"): print "Info only:", df.match.group() - x.cont() - continue elif x.re(df, "^\n"): - x.cont() - continue + pass elif x.re(df, "^.*(?=\n)"): print "Unexpected line", df.match.group() - x.cont() - continue elif x.eof(df): print "And that's all, folks!" + break diff --git a/demo/dualftp.py b/demo/dualftp.py index e7ff0f0..927ac50 100644 --- a/demo/dualftp.py +++ b/demo/dualftp.py @@ -20,11 +20,9 @@ sunet = pcl_expect.spawn.spawn("ftp ftp.sunet.se") def name_cb(ftp): ftp.send("anonymous\n") - return pcl_expect.CONT def password_cb(ftp): ftp.send("ceder@lysator.liu.se\n") - return pcl_expect.CONT cmds = {} cmds[funet] = ["cd pub\n", "passive\n", "dir\n"] @@ -47,8 +45,8 @@ def prompt_cb(ftp): pcl_expect.debug("STATE: cmds[sunet] = %s\n" % cmds[sunet]) pcl_expect.debug("STATE: cmds[funet] = %s\n" % cmds[funet]) - if printed < 2: - return pcl_expect.CONT + if printed == 2: + return pcl_expect.BREAK pcl_expect.expect_after([(pcl_expect.RE, funet, "Name.*:", name_cb), (pcl_expect.RE, sunet, "Name.*:", name_cb), @@ -62,8 +60,6 @@ while x.loop(): if x.timeout(): sys.stdout.write(".") sys.stdout.flush() - x.cont() - continue sunet.send("bye\n") funet.send("bye\n") @@ -75,22 +71,20 @@ while x.loop(): if x.eof(sunet): print "SUNET final output:", sunet.match sunet.close() + break elif x.timeout(): sys.stdout.write(".") sys.stdout.flush() - x.cont() - continue x = pcl_expect.controller() while x.loop(): if x.eof(funet): print "FUNET final output:", funet.match funet.close() + break elif x.timeout(): sys.stdout.write(".") sys.stdout.flush() - x.cont() - continue print "SUNET time:", speed[sunet], "seconds" print "FUNET time:", speed[funet], "seconds" diff --git a/demo/ftp.py b/demo/ftp.py index 39b1f2f..5e7aebb 100644 --- a/demo/ftp.py +++ b/demo/ftp.py @@ -11,28 +11,24 @@ x = pcl_expect.controller() while x.loop(): if x.re(ftp, "Name.*:"): ftp.send("anonymous\n") - x.cont() - continue elif x.re(ftp, "Password:"): ftp.send("ceder@lysator.liu.se\n") - x.cont() - continue elif x.re(ftp, "ftp> "): - pass + break ftp.send("cd pub\n") x = pcl_expect.controller() while x.loop(): if x.re(ftp, "(?s).*ftp> "): - pass + break ftp.send("passive\n") x = pcl_expect.controller() while x.loop(): if x.re(ftp, "(?s).*ftp> "): - pass + break ftp.send("dir\n") @@ -40,5 +36,6 @@ x = pcl_expect.controller() while x.loop(): if x.re(ftp, "(?s).*ftp> "): print ftp.match.group() + break ftp.close() diff --git a/demo/ftp.pyex b/demo/ftp.pyex index ca10ff4..48bfecd 100644 --- a/demo/ftp.pyex +++ b/demo/ftp.pyex @@ -10,29 +10,28 @@ ftp = pcl_expect.spawn.spawn("ftp ftp.funet.fi") expect: re(ftp, "Name.*:"): ftp.send("anonymous\n") - exp_continue re(ftp, "Password:"): ftp.send("ceder@lysator.liu.se\n") - exp_continue re(ftp, "ftp> "): - pass + break ftp.send("cd pub\n") expect: re(ftp, "(?s).*ftp> "): - pass + break ftp.send("passive\n") expect: re(ftp, "(?s).*ftp> "): - pass + break ftp.send("dir\n") expect: re(ftp, "(?s).*ftp> "): print ftp.match.group() + break ftp.close() diff --git a/demo/ftptrad.py b/demo/ftptrad.py index b6f5ae6..3b3ac74 100644 --- a/demo/ftptrad.py +++ b/demo/ftptrad.py @@ -9,11 +9,9 @@ ftp = pcl_expect.spawn.spawn("ftp ftp.funet.fi") def send_anon(exp): exp.send("anonymous\n") - return pcl_expect.CONT def send_user(exp): exp.send("ceder@lysator.liu.se\n") - return pcl_expect.CONT ret, exp = pcl_expect.expect([ (pcl_expect.RE, ftp, "Name.*:", send_anon), diff --git a/demo/telnet.py b/demo/telnet.py index 6e219e8..9eb4f51 100644 --- a/demo/telnet.py +++ b/demo/telnet.py @@ -30,16 +30,19 @@ x = pcl_expect.controller() while x.loop(): if x.re(t, "ogin:"): t.send(user + "\n") + break x = pcl_expect.controller() while x.loop(): if x.re(t, "assword:"): t.send(password + "\n") + break x = pcl_expect.controller() while x.loop(): if x.re(t, ">|\\$|#"): t.send("uname -a\n") + break elif x.re(t, "incorrect"): print "Wrong password" t.close() @@ -50,8 +53,10 @@ while x.loop(): if x.re(t, "(.*)\r?\n.*(>|\\$|#)"): print "SYSTEM ID:", t.match.group(1) t.send("exit\n") + break x = pcl_expect.controller() while x.loop(): if x.eof(t): t.close() + break -- GitLab