diff options
| author | Mike Kazantsev <mk.fraggod@gmail.com> | 2013-02-11 13:56:03 +0100 | 
|---|---|---|
| committer | Miklos Vajna <vmiklos@suse.cz> | 2013-02-11 13:56:03 +0100 | 
| commit | 1146e216e8cf8c6fca77f3b5325ccd86078f827a (patch) | |
| tree | ada919bfd2a6b9ecda39e78ec5f3bb330a0e89d6 | |
| parent | 65a5d154b052c9ff35a79eaf8e3405522c8737cc (diff) | |
skype.test: do proper cleanup of skyped process despite possible exceptions, keep pexpect.log
| -rwxr-xr-x | protocols/skype/test.py | 36 | 
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: | 
