]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
test_volume_client: make test_object_versioned py3 compatible
authorRishabh Dave <ridave@redhat.com>
Fri, 21 Jun 2019 09:26:49 +0000 (14:56 +0530)
committerNathan Cutler <ncutler@suse.com>
Sat, 7 Sep 2019 08:43:14 +0000 (10:43 +0200)
Convert strings to bytes in the Python program embedded inside this
test. Also, in the process don't lose Python 2 compatibility.

Fixes: http://tracker.ceph.com/issues/39405
Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 975b47502d6430555511e9ea83682aa1b26803a1)

qa/tasks/cephfs/test_volume_client.py

index 8ab632b92a62664f4c5ce6d858da2d9cb886cfdd..8a17b9b5cb5d6204ec5eefa9bb36b91ef00348b1 100644 (file)
@@ -33,6 +33,7 @@ class TestVolumeClient(CephFSTestCase):
         return client.run_python("""
 from __future__ import print_function
 from ceph_volume_client import CephFSVolumeClient, VolumePath
+from sys import version_info as sys_version_info
 import logging
 log = logging.getLogger("ceph_volume_client")
 log.addHandler(logging.StreamHandler())
@@ -1000,9 +1001,19 @@ vc.disconnect()
         with self.assertRaises(CommandFailedError):
             self._volume_client_python(vc_mount, dedent("""
                 data, version = vc.get_object_and_version("{pool_name}", "{obj_name}")
-                data += 'm1'
+
+                if sys_version_info.major < 3:
+                    data = data + 'm1'
+                elif sys_version_info.major > 3:
+                    data = str.encode(data.decode('utf-8') + 'm1')
+
                 vc.put_object("{pool_name}", "{obj_name}", data)
-                data += 'm2'
+
+                if sys_version_info.major < 3:
+                    data = data + 'm2'
+                elif sys_version_info.major > 3:
+                    data = str.encode(data.decode('utf-8') + 'm2')
+
                 vc.put_object_versioned("{pool_name}", "{obj_name}", data, version)
             """).format(pool_name=pool_name, obj_name=obj_name))