From: Yehuda Sadeh Date: Wed, 23 Dec 2015 16:35:07 +0000 (-0800) Subject: test-rgw-call.sh: add missing file X-Git-Tag: v10.1.0~354^2~103 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6052d4b09b1f56a46b09d23f9083084867e8eb3e;p=ceph.git test-rgw-call.sh: add missing file Signed-off-by: Yehuda Sadeh --- diff --git a/src/test/rgw/test-rgw-call.sh b/src/test/rgw/test-rgw-call.sh new file mode 100755 index 00000000000..72ce106ede1 --- /dev/null +++ b/src/test/rgw/test-rgw-call.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +. "`dirname $0`/test-rgw-common.sh" +. "`dirname $0`/test-rgw-meta-sync.sh" + +eval "$@" diff --git a/src/test/rgw/test_multi.py b/src/test/rgw/test_multi.py index d8edcfb2f1d..e127fcf0071 100644 --- a/src/test/rgw/test_multi.py +++ b/src/test/rgw/test_multi.py @@ -603,8 +603,46 @@ def test_object_sync(): realm.zone_data_checkpoint(target_zone, source_zone) check_bucket_eq(source_zone, target_zone, bucket_name) - +def test_object_delete(): + buckets, zone_bucket = create_bucket_per_zone() + + all_zones = [] + for z in zone_bucket: + all_zones.append(z) + + objname = 'myobj' + content = 'asdasd' + + # don't wait for meta sync just yet + for zone, bucket_name in zone_bucket.iteritems(): + k = new_key(zone, bucket_name, objname) + k.set_contents_from_string(content) + + realm.meta_checkpoint() + + # check object exists + for source_zone, bucket_name in zone_bucket.iteritems(): + for target_zone in all_zones: + if source_zone.zone_name == target_zone.zone_name: + continue + + realm.zone_data_checkpoint(target_zone, source_zone) + + check_bucket_eq(source_zone, target_zone, bucket_name) + + # check object removal + for source_zone, bucket_name in zone_bucket.iteritems(): + k = get_key(source_zone, bucket_name, objname) + k.delete() + for target_zone in all_zones: + if source_zone.zone_name == target_zone.zone_name: + continue + + realm.zone_data_checkpoint(target_zone, source_zone) + + check_bucket_eq(source_zone, target_zone, bucket_name) + def init(parse_args): cfg = ConfigParser.RawConfigParser({ 'num_zones': 2,