コード例 #1
0
 /**
  * @depends testPutObjectsWithUtf8Keys
  */
 public function testMultipartUploads()
 {
     $this->client->waitUntil('bucket_exists', array('Bucket' => $this->bucket));
     $this->log('Initiating an upload');
     $result = $this->client->createMultipartUpload(array('Bucket' => $this->bucket, 'Key' => 'big', 'Metadata' => array('foo' => 'bar')));
     $this->assertNotEmpty($result['UploadId']);
     $this->assertNotEmpty($result['Key']);
     $this->assertNotEmpty($result['Bucket']);
     $uploadId = $result['UploadId'];
     sleep(1);
     $this->log('Getting uploads');
     $command = $this->client->getCommand('ListMultipartUploads', array('Bucket' => $this->bucket, 'UploadId' => $uploadId));
     $result = $command->execute();
     $this->assertEquals($this->bucket, $result['Bucket']);
     $this->assertInternalType('array', $result['Uploads']);
     $this->assertSame(false, $result['IsTruncated']);
     $this->log('Aborting the upload');
     sleep(2);
     $this->client->waitUntil('bucket_exists', array('Bucket' => $this->bucket));
     $command = $this->client->getCommand('AbortMultipartUpload', array('Bucket' => $this->bucket, 'Key' => 'big', 'UploadId' => $uploadId));
     $result = $command->execute();
     $this->assertArrayHasKey('RequestId', array_keys($result->toArray()));
 }