From 6407d849d4719c9aeda1eca011808044fb126764 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Mon, 1 Dec 2014 21:00:21 -0600 Subject: Add a sendeof method and tests --- pexpect/popen_spawn.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'pexpect/popen_spawn.py') diff --git a/pexpect/popen_spawn.py b/pexpect/popen_spawn.py index 0a186fe..389c505 100644 --- a/pexpect/popen_spawn.py +++ b/pexpect/popen_spawn.py @@ -26,7 +26,7 @@ class PopenSpawn(SpawnBase): logfile=None, cwd=None, env=None): super(PopenSpawn, self).__init__(timeout=timeout, maxread=maxread, searchwindowsize=searchwindowsize, logfile=logfile) - + kwargs = dict(bufsize=0, stdin=subprocess.PIPE, stderr=subprocess.STDOUT, stdout=subprocess.PIPE, cwd=cwd, env=env) @@ -106,7 +106,7 @@ class PopenSpawn(SpawnBase): def writelines(self, sequence): '''This calls write() for each element in the sequence. - + The sequence can be any iterable object producing strings, typically a list of strings. This does not add line separators. There is no return value. @@ -153,6 +153,12 @@ class PopenSpawn(SpawnBase): os.kill(self.proc.pid, sig) + def sendeof(self): + if sys.platform == 'win32': + self.kill(signal.CTRL_BREAK_EVENT) + else: + self.kill(signal.SIGTERM) + class PopenSpawnUnicode(SpawnBaseUnicode, PopenSpawn): def _send(self, s): -- cgit v1.2.1