[svn r63145] add support for "chdir"
--HG-- branch : trunk
This commit is contained in:
parent
e383082b5b
commit
9cd41c91bd
|
@ -73,6 +73,17 @@ class TestMakegateway:
|
|||
assert rinfo.cwd == py.std.os.getcwd()
|
||||
assert rinfo.version_info[:2] == (2,6)
|
||||
|
||||
def test_popen_chdir_absolute(self, testdir):
|
||||
gw = py.execnet.makegateway("popen//chdir=%s" % testdir.tmpdir)
|
||||
rinfo = gw._rinfo()
|
||||
assert rinfo.cwd == str(testdir.tmpdir)
|
||||
|
||||
def test_popen_chdir_newsub(self, testdir):
|
||||
testdir.chdir()
|
||||
gw = py.execnet.makegateway("popen//chdir=hello")
|
||||
rinfo = gw._rinfo()
|
||||
assert rinfo.cwd == str(testdir.tmpdir.join("hello"))
|
||||
|
||||
def test_ssh(self, specssh):
|
||||
sshhost = specssh.ssh
|
||||
gw = py.execnet.makegateway("ssh=%s" % sshhost)
|
||||
|
|
|
@ -38,4 +38,15 @@ def makegateway(spec):
|
|||
hostport = spec.socket.split(":")
|
||||
gw = py.execnet.SocketGateway(*hostport)
|
||||
gw.spec = spec
|
||||
# XXX events
|
||||
if spec.chdir:
|
||||
gw.remote_exec("""
|
||||
import os
|
||||
path = %r
|
||||
try:
|
||||
os.chdir(path)
|
||||
except OSError:
|
||||
os.mkdir(path)
|
||||
os.chdir(path)
|
||||
""" % spec.chdir).waitclose()
|
||||
return gw
|
||||
|
|
Loading…
Reference in New Issue