aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/skype/test.py
diff options
context:
space:
mode:
authorMike Kazantsev <mk.fraggod@gmail.com>2013-02-11 13:56:03 +0100
committerMiklos Vajna <vmiklos@suse.cz>2013-02-11 13:56:03 +0100
commit1146e216e8cf8c6fca77f3b5325ccd86078f827a (patch)
treeada919bfd2a6b9ecda39e78ec5f3bb330a0e89d6 /protocols/skype/test.py
parent65a5d154b052c9ff35a79eaf8e3405522c8737cc (diff)
skype.test: do proper cleanup of skyped process despite possible exceptions, keep pexpect.log
Diffstat (limited to 'protocols/skype/test.py')
-rwxr-xr-xprotocols/skype/test.py36
1 files changed, 18 insertions, 18 deletions
diff --git a/protocols/skype/test.py b/protocols/skype/test.py
index 9f4c13ce..6d4e9daf 100755
--- a/protocols/skype/test.py
+++ b/protocols/skype/test.py
@@ -17,25 +17,25 @@ class Test(unittest.TestCase):
proc.stdin.close()
proc.communicate()
def mock(self, name):
- skyped_log = open("t/skyped.log", "w")
- skyped = subprocess.Popen([sys.executable, "skyped.py", "-c", "t/skyped/skyped.conf", "-n", "-d", "-m", "t/%s-skyped.mock" % name],
+ with open("t/skyped.log", "w") as skyped_log,\
+ open("t/pexpect.log", "w") as pexpect_log:
+ skyped = subprocess.Popen([sys.executable, "skyped.py",
+ "-c", "t/skyped/skyped.conf", "-n", "-d", "-m", "t/%s-skyped.mock" % name],
stdout=skyped_log, stderr=subprocess.STDOUT)
-
- try:
- bitlbee = pexpect.spawn('../../bitlbee', ['-d', 't/bitlbee'])
- bitlbee_mock = open("t/%s-bitlbee.mock" % name)
- for i in bitlbee_mock.readlines():
- line = i.strip()
- if line.startswith(">> "):
- bitlbee.expect_exact(line[3:], timeout=10)
- elif line.startswith("<< "):
- bitlbee.sendline(line[3:])
- bitlbee_mock.close()
- bitlbee.close()
- finally:
- skyped.terminate()
- skyped.communicate()
- skyped_log.close()
+ try:
+ bitlbee = pexpect.spawn('../../bitlbee', ['-d', 't/bitlbee'], logfile=pexpect_log)
+ bitlbee_mock = open("t/%s-bitlbee.mock" % name)
+ for i in bitlbee_mock.readlines():
+ line = i.strip()
+ if line.startswith(">> "):
+ bitlbee.expect_exact(line[3:], timeout=10)
+ elif line.startswith("<< "):
+ bitlbee.sendline(line[3:])
+ bitlbee_mock.close()
+ bitlbee.close()
+ finally:
+ skyped.terminate()
+ skyped.communicate()
def setUp(self):
try: