21356: Remove all Python 2/3 compatibility imports
[arvados.git] / services / fuse / tests / test_exec.py
index 35196033130261bb07bf2b595e97aa7f5025097f..c67cc55f341475a28b6dcd1440bcf5a0bfc44230 100644 (file)
@@ -2,24 +2,20 @@
 #
 # SPDX-License-Identifier: AGPL-3.0
 
-from __future__ import absolute_import
 import arvados_fuse.command
 import json
 import multiprocessing
 import os
-from . import run_test_server
+import shlex
 import tempfile
 import unittest
 
+from . import run_test_server
 from .integration_test import workerPool
 
-try:
-    from shlex import quote
-except:
-    from pipes import quote
-
 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',
@@ -37,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
@@ -54,12 +50,10 @@ class ExecMode(unittest.TestCase):
 
     def test_exec(self):
         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)))]))
+            '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.assertRegexpMatches(
-                json.load(f)['manifest_text'],
-                r' 0:3:foo.txt\n')
+            self.assertRegex(json.load(f)['manifest_text'], r' 0:3:foo.txt\n')