X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/44c95f99098fa6c6acbfa82d4b6cbc6015eb6e39..1a169a434494175b208d0d5055bb42333d9b64b9:/services/fuse/tests/test_exec.py diff --git a/services/fuse/tests/test_exec.py b/services/fuse/tests/test_exec.py index 85cb5e4698..6af60302bc 100644 --- a/services/fuse/tests/test_exec.py +++ b/services/fuse/tests/test_exec.py @@ -2,14 +2,18 @@ # # SPDX-License-Identifier: AGPL-3.0 +from __future__ import absolute_import +from six import assertRegex import arvados_fuse.command import json import multiprocessing import os -import run_test_server +from . import run_test_server import tempfile import unittest +from .integration_test import workerPool + try: from shlex import quote except: @@ -17,6 +21,7 @@ except: 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 +39,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 +49,20 @@ 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, [ + workerPool().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') + with open(self.okfile) as f: + assertRegex( + self, + json.load(f)['manifest_text'], + r' 0:3:foo.txt\n')