@@ -565,93 +565,60 @@ - (void)testPut_And_Get_BucketVersioning {
565565}
566566
567567- (void )testPut_Get_Delte_BucketReplication {
568- __block NSString *sourceBucket = @" xiaodaxiansource" ;
568+ __block NSString *sourceBucket = @" xiaodaxiansource" ;
569569 __block NSString *destinationBucket = @" replication-destination" ;
570570 __block NSString *destinationRegion = @" ap-beijing" ;
571-
571+
572572 // enable bucket versioning first
573- QCloudPutBucketVersioningRequest *destinationPutBucketVersioningRequest = [[QCloudPutBucketVersioningRequest alloc ] init ];
574- destinationPutBucketVersioningRequest.bucket = destinationBucket;
575- QCloudBucketVersioningConfiguration *configuration = [[QCloudBucketVersioningConfiguration alloc ] init ];
576- destinationPutBucketVersioningRequest.configuration = configuration;
577- configuration.status = QCloudCOSBucketVersioningStatusEnabled;
578- XCTestExpectation *putDestinationBucketVersioningExpectation = [self expectationWithDescription: @" Put Bucket Versioning first " ];
579- [destinationPutBucketVersioningRequest setFinishBlock: ^(id outputObject, NSError *error) {
580- [putDestinationBucketVersioningExpectation fulfill ];
581- XCTAssertNil (error);
582- }];
583- __block NSString *previousRegion = [QCloudCOSXMLService defaultCOSXML ].configuration .endpoint .regionName ;
584- [QCloudCOSXMLService defaultCOSXML ].configuration .endpoint .regionName = destinationRegion;
585- [[QCloudCOSXMLService defaultCOSXML ] PutBucketVersioning: destinationPutBucketVersioningRequest];
586- [self waitForExpectationsWithTimeout: 10
587- handler: ^(NSError *_Nullable error) {
588- [QCloudCOSXMLService defaultCOSXML ].configuration .endpoint .regionName = previousRegion;
589- }];
590-
591- QCloudPutBucketVersioningRequest *request = [[QCloudPutBucketVersioningRequest alloc ] init ];
573+
574+ XCTestExpectation *putReplicationExpectation = [self expectationWithDescription: @" Put Bucket Versioning first " ];
575+ // put bucket replication
576+ QCloudPutBucketReplicationRequest *request = [[QCloudPutBucketReplicationRequest alloc ] init ];
592577 request.bucket = sourceBucket;
593- // QCloudBucketVersioningConfiguration* configuration = [[QCloudBucketVersioningConfiguration alloc] init];
594- request.configuration = configuration;
595- configuration.status = QCloudCOSBucketVersioningStatusEnabled;
596- XCTestExpectation *expectation = [self expectationWithDescription: @" Put Bucket Versioning" ];
578+ QCloudBucketReplicationConfiguation *configuration = [[QCloudBucketReplicationConfiguation alloc ] init ];
579+ configuration.role = [NSString identifierStringWithID: @" 1278687956" :@" 1278687956" ];
580+ QCloudBucketReplicationRule *rule = [[QCloudBucketReplicationRule alloc ] init ];
581+
582+ rule.identifier = [NSUUID UUID ].UUIDString ;
583+ rule.status = QCloudCOSXMLStatusEnabled;
584+
585+ QCloudBucketReplicationDestination *destination = [[QCloudBucketReplicationDestination alloc ] init ];
586+ // qcs:id/0:cos:[region]:appid/[AppId]:[bucketname]
587+ // NSString* destinationBucket = destinationBucket;
588+ destination.bucket = [NSString stringWithFormat: @" qcs:id/0:cos:%@ :appid/%@ :%@ " , destinationRegion, self .appID, destinationBucket];
589+ rule.destination = destination;
590+ configuration.rule = @[ rule ];
591+ request.configuation = configuration;
597592 [request setFinishBlock: ^(id outputObject, NSError *error) {
598593 XCTAssertNil (error);
599-
600- // put bucket replication
601- QCloudPutBucketReplicationRequest *request = [[QCloudPutBucketReplicationRequest alloc ] init ];
594+ sleep ( 5 );
595+ // get bucket replication
596+ QCloudGetBucketReplicationRequest *request = [[QCloudGetBucketReplicationRequest alloc ] init ];
602597 request.bucket = sourceBucket;
603- QCloudBucketReplicationConfiguation *configuration = [[QCloudBucketReplicationConfiguation alloc ] init ];
604- configuration.role = [NSString identifierStringWithID: @" 1278687956" :@" 1278687956" ];
605- QCloudBucketReplicationRule *rule = [[QCloudBucketReplicationRule alloc ] init ];
606-
607- rule.identifier = [NSUUID UUID ].UUIDString ;
608- rule.status = QCloudCOSXMLStatusEnabled;
609-
610- QCloudBucketReplicationDestination *destination = [[QCloudBucketReplicationDestination alloc ] init ];
611- // qcs:id/0:cos:[region]:appid/[AppId]:[bucketname]
612- // NSString* destinationBucket = destinationBucket;
613- destination.bucket = [NSString stringWithFormat: @" qcs:id/0:cos:%@ :appid/%@ :%@ " , destinationRegion, self .appID, destinationBucket];
614- rule.destination = destination;
615- configuration.rule = @[ rule ];
616- request.configuation = configuration;
617- [request setFinishBlock: ^(id outputObject, NSError *error) {
598+ [request setFinishBlock: ^(QCloudBucketReplicationConfiguation *result, NSError *error) {
618599 XCTAssertNil (error);
619- // get bucket replication
620- QCloudGetBucketReplicationRequest *request = [[QCloudGetBucketReplicationRequest alloc ] init ];
600+ XCTAssertNotNil (result);
601+
602+ // delete bucket replication
603+ QCloudDeleteBucketReplicationRequest *request = [[QCloudDeleteBucketReplicationRequest alloc ] init ];
621604 request.bucket = sourceBucket;
622- [request setFinishBlock: ^(QCloudBucketReplicationConfiguation *result , NSError *error) {
605+ [request setFinishBlock: ^(id outputObject , NSError *error) {
623606 XCTAssertNil (error);
624- XCTAssertNotNil (result);
625-
626- // delete bucket replication
627- QCloudDeleteBucketReplicationRequest *request = [[QCloudDeleteBucketReplicationRequest alloc ] init ];
628- request.bucket = sourceBucket;
629- [request setFinishBlock: ^(id outputObject, NSError *error) {
630- XCTAssertNil (error);
631- [expectation fulfill ];
632- }];
633- [[QCloudCOSXMLService defaultCOSXML ] DeleteBucketReplication: request];
634- // delete bucket replication end
607+ [putReplicationExpectation fulfill ];
635608 }];
636- dispatch_semaphore_t semaphore = dispatch_semaphore_create (0 );
637- dispatch_semaphore_wait (semaphore, 5 * NSEC_PER_SEC);
638- [[QCloudCOSXMLService defaultCOSXML ] GetBucketReplication: request];
639-
640- // get bucket replication end
609+ [[QCloudCOSXMLService defaultCOSXML ] DeleteBucketReplication: request];
610+ // delete bucket replication end
641611 }];
642- [[QCloudCOSXMLService defaultCOSXML ] PutBucketRelication: request];
643- // put bucket replication end
612+ dispatch_semaphore_t semaphore = dispatch_semaphore_create (0 );
613+ dispatch_semaphore_wait (semaphore, 5 * NSEC_PER_SEC);
614+ [[QCloudCOSXMLService defaultCOSXML ] GetBucketReplication: request];
615+
616+ // get bucket replication end
644617 }];
645- [[QCloudCOSXMLService defaultCOSXML ] PutBucketVersioning: request];
618+
619+ // put bucket replication end
620+ [[QCloudCOSXMLService defaultCOSXML ] PutBucketRelication: request];
646621 [self waitForExpectationsWithTimeout: 80 handler: nil ];
647-
648- //
649- // QCloudPutBucketVersioningRequest* suspendRequest = [[QCloudPutBucketVersioningRequest alloc] init];
650- // suspendRequest.bucket = self.bucket;
651- // QCloudBucketVersioningConfiguration* suspendConfiguration = [[QCloudBucketVersioningConfiguration alloc] init];
652- // request.configuration = suspendConfiguration;
653- // suspendConfiguration.status = QCloudCOSBucketVersioningStatusSuspended;
654- // [[QCloudCOSXMLService defaultCOSXML] PutBucketVersioning:request];
655622}
656623//
657624// - (void)testNewPut_Get_DeleteBucketReplication {
0 commit comments