X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0f644e242ef37c911ad3dc25aca8135c339de349..9a8bcf923075e072dcde21795b03087affb63e6a:/services/fuse/tests/test_exec.py diff --git a/services/fuse/tests/test_exec.py b/services/fuse/tests/test_exec.py index 85cb5e4698..c67cc55f34 100644 --- a/services/fuse/tests/test_exec.py +++ b/services/fuse/tests/test_exec.py @@ -6,17 +6,16 @@ import arvados_fuse.command import json import multiprocessing import os -import run_test_server +import shlex import tempfile import unittest -try: - from shlex import quote -except: - from pipes import quote +from . import run_test_server +from .integration_test import workerPool def try_exec(mnt, cmd): try: + os.environ['KEEP_LOCAL_STORE'] = tempfile.mkdtemp() arvados_fuse.command.Mount( arvados_fuse.command.ArgumentParser().parse_args([ '--read-write', @@ -34,7 +33,7 @@ class ExecMode(unittest.TestCase): @classmethod def setUpClass(cls): run_test_server.run() - run_test_server.run_keep(enforce_permissions=True, num_servers=2) + run_test_server.run_keep(blob_signing=True, num_servers=2) run_test_server.authorize_with('active') @classmethod @@ -44,21 +43,17 @@ class ExecMode(unittest.TestCase): def setUp(self): self.mnt = tempfile.mkdtemp() _, self.okfile = tempfile.mkstemp() - self.pool = multiprocessing.Pool(1) def tearDown(self): - self.pool.terminate() - self.pool.join() os.rmdir(self.mnt) os.unlink(self.okfile) def test_exec(self): - self.pool.apply(try_exec, (self.mnt, [ - 'sh', '-c', - 'echo -n foo >{}; cp {} {}'.format( - quote(os.path.join(self.mnt, 'zzz', 'foo.txt')), - quote(os.path.join(self.mnt, 'zzz', '.arvados#collection')), - quote(os.path.join(self.okfile)))])) - self.assertRegexpMatches( - json.load(open(self.okfile))['manifest_text'], - r' 0:3:foo.txt\n') + workerPool().apply(try_exec, (self.mnt, [ + 'sh', '-c', 'echo -n foo >{}; cp {} {}'.format( + shlex.quote(os.path.join(self.mnt, 'zzz', 'foo.txt')), + shlex.quote(os.path.join(self.mnt, 'zzz', '.arvados#collection')), + shlex.quote(os.path.join(self.okfile)), + )])) + with open(self.okfile) as f: + self.assertRegex(json.load(f)['manifest_text'], r' 0:3:foo.txt\n')