mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2024-12-23 23:02:25 +00:00
tahoe_fuse: system test: Launch the fuse interface.
This commit is contained in:
parent
c225c657d4
commit
1295c1e4ec
@ -6,7 +6,7 @@ Note: The API design of the python-fuse library makes unit testing much
|
|||||||
of tahoe-fuse.py tricky business.
|
of tahoe-fuse.py tricky business.
|
||||||
'''
|
'''
|
||||||
|
|
||||||
import sys, os, shutil, unittest, subprocess, tempfile, re, time
|
import sys, os, shutil, unittest, subprocess, tempfile, re, time, signal
|
||||||
|
|
||||||
import tahoe_fuse
|
import tahoe_fuse
|
||||||
|
|
||||||
@ -48,6 +48,7 @@ class SystemTest (object):
|
|||||||
self.cliexec = None
|
self.cliexec = None
|
||||||
self.introbase = None
|
self.introbase = None
|
||||||
self.clientbase = None
|
self.clientbase = None
|
||||||
|
self.mountpoint = None
|
||||||
|
|
||||||
## Top-level flow control:
|
## Top-level flow control:
|
||||||
# These "*_layer" methods call eachother in a linear fashion, using
|
# These "*_layer" methods call eachother in a linear fashion, using
|
||||||
@ -181,8 +182,25 @@ class SystemTest (object):
|
|||||||
print 'Ignoring cleanup exception: %r' % (e,)
|
print 'Ignoring cleanup exception: %r' % (e,)
|
||||||
|
|
||||||
def mount_fuse_layer(self):
|
def mount_fuse_layer(self):
|
||||||
# XXX not implemented.
|
print 'Mounting fuse interface.'
|
||||||
pass
|
self.mountpoint = tempfile.mkdtemp(prefix='tahoe_fuse_mp_')
|
||||||
|
try:
|
||||||
|
thispath = os.path.abspath(sys.argv[0])
|
||||||
|
thisdir = os.path.dirname(thispath)
|
||||||
|
fusescript = os.path.join(thisdir, 'tahoe_fuse.py')
|
||||||
|
try:
|
||||||
|
proc = subprocess.Popen([fusescript, self.mountpoint, '-f'])
|
||||||
|
# FIXME: Verify the mount somehow?
|
||||||
|
# FIXME: Now do tests!
|
||||||
|
finally:
|
||||||
|
if proc.poll() is None:
|
||||||
|
print 'Killing fuse interface.'
|
||||||
|
os.kill(proc.pid, signal.SIGTERM)
|
||||||
|
print 'Waiting for the fuse interface to exit.'
|
||||||
|
proc.wait()
|
||||||
|
finally:
|
||||||
|
self.cleanup_dir(self.mountpoint)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Utilities:
|
# Utilities:
|
||||||
|
Loading…
Reference in New Issue
Block a user