]> git-server-git.apps.pok.os.sepia.ceph.com Git - ragweed.git/commitdiff
ragweed: python3 string / bytearrat fixes wip-sage3-testing-2019-12-17-0629
authorYehuda Sadeh <yehuda@redhat.com>
Wed, 18 Dec 2019 16:58:50 +0000 (08:58 -0800)
committerYehuda Sadeh <yehuda@redhat.com>
Wed, 18 Dec 2019 16:58:50 +0000 (08:58 -0800)
and other related issues

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
ragweed/framework.py
ragweed/tests/tests.py

index 9fa733508daefa3f870e5fd4737bfd0f0237f7c9..3dfb3e403596018402dd7b96a85c30c0e85da540 100644 (file)
@@ -125,13 +125,13 @@ class RSuite:
 
 class RTestJSONSerialize(json.JSONEncoder):
     def default(self, obj):
-        if isinstance(obj, (list, dict, str, int, float, bool, type(None))):
+        if isinstance(obj, (list, dict, tuple, str, int, float, bool, type(None))):
             return JSONEncoder.default(self, obj)
-        return {'__pickle': pickle.dumps(obj)}
+        return {'__pickle': pickle.dumps(obj, 0).decode('utf-8')}
 
 def rtest_decode_json(d):
     if '__pickle' in d:
-        return pickle.loads(str(d['__pickle']))
+        return pickle.loads(bytearray(d['__pickle'], 'utf-8'))
     return d
 
 class RPlacementRule:
index 9198b21871669fad83efe8443f0a68dcfdba7506..c57b2caaef821698131a68cd662ce6a2657413ca 100644 (file)
@@ -108,9 +108,9 @@ def generate_random(size):
     chunk = 1024
     allowed = string.ascii_letters
     s = ''
-    strpart = ''.join([allowed[random.randint(0, len(allowed) - 1)] for _ in xrange(chunk)])
+    strpart = ''.join([allowed[random.randint(0, len(allowed) - 1)] for _ in range(chunk)])
 
-    for y in range((size + chunk - 1) / chunk):
+    for y in range((size + chunk - 1) // chunk):
         this_chunk_len = chunk
 
         if len(s) + this_chunk_len > size:
@@ -156,7 +156,7 @@ class r_test_small_obj_data(RTest):
                 obj = Key(rbucket.bucket)
                 obj.key = n;
                 obj_data = obj.get_contents_as_string()
-                eq(data, obj_data)
+                eq(bytearray(data, 'utf-8'), obj_data)
 
                 validate_obj_location(rbucket, obj)
 
@@ -185,7 +185,7 @@ class MultipartUploader:
                 if upload.key_name == self.obj_name and upload.id == state.upload_id:
                     self.mp = upload
 
-        self.num_full_parts = self.size / self.part_size
+        self.num_full_parts = self.size // self.part_size
         self.last_part_size = self.size % self.part_size
 
 
@@ -205,10 +205,10 @@ class MultipartUploader:
             return False
 
         if self.cur_part < self.num_full_parts:
-            payload=gen_rand_string(self.part_size / (1024 * 1024)) * 1024 * 1024
+            payload=gen_rand_string(self.part_size // (1024 * 1024)) * 1024 * 1024
 
             self.mp.upload_part_from_file(StringIO(payload), self.cur_part + 1)
-            self.crc = binascii.crc32(payload, self.crc)
+            self.crc = binascii.crc32(bytearray(payload, 'utf-8'), self.crc)
             self.cur_part += 1
 
             return True
@@ -218,7 +218,7 @@ class MultipartUploader:
             last_payload='1'*self.last_part_size
 
             self.mp.upload_part_from_file(StringIO(last_payload), self.num_full_parts + 1)
-            self.crc = binascii.crc32(last_payload, self.crc)
+            self.crc = binascii.crc32(bytearray(last_payload, 'utf-8'), self.crc)
             self.cur_part += 1
 
         return False
@@ -398,7 +398,7 @@ class r_test_obj_storage_class(RTest):
         placement_target = zone.get_placement_target(rb.placement_rule.placement_id)
 
         data = generate_random(self.obj_size)
-        crc = calc_crc(data)
+        crc = calc_crc(bytearray(data, 'utf-8'))
 
         self.r_objs = []
 
@@ -499,7 +499,7 @@ class r_test_obj_storage_class_copy(RTest):
         placement_target = zone.get_placement_target(rb.placement_rule.placement_id)
 
         data = generate_random(self.obj_size)
-        crc = calc_crc(data)
+        crc = calc_crc(bytearray(data, 'utf-8'))
 
         self.r_objs = []