1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- <?php
- namespace OSS\Tests;
- use OSS\Core\OssException;
- use OSS\Http\ResponseCore;
- use OSS\Result\ListBucketsResult;
- class ListBucketsResultTest extends \PHPUnit_Framework_TestCase
- {
- private $validXml = <<<BBBB
- <?xml version="1.0" encoding="UTF-8"?>
- <ListAllMyBucketsResult>
- <Owner>
- <ID>ut_test_put_bucket</ID>
- <DisplayName>ut_test_put_bucket</DisplayName>
- </Owner>
- <Buckets>
- <Bucket>
- <Location>oss-cn-hangzhou-a</Location>
- <Name>xz02tphky6fjfiuc0</Name>
- <CreationDate>2014-05-15T11:18:32.000Z</CreationDate>
- </Bucket>
- <Bucket>
- <Location>oss-cn-hangzhou-a</Location>
- <Name>xz02tphky6fjfiuc1</Name>
- <CreationDate>2014-05-15T11:18:32.000Z</CreationDate>
- </Bucket>
- </Buckets>
- </ListAllMyBucketsResult>
- BBBB;
- private $nullXml = <<<BBBB
- <?xml version="1.0" encoding="UTF-8"?>
- <ListAllMyBucketsResult>
- <Owner>
- <ID>ut_test_put_bucket</ID>
- <DisplayName>ut_test_put_bucket</DisplayName>
- </Owner>
- <Buckets>
- </Buckets>
- </ListAllMyBucketsResult>
- BBBB;
- public function testParseValidXml()
- {
- $response = new ResponseCore(array(), $this->validXml, 200);
- $result = new ListBucketsResult($response);
- $this->assertTrue($result->isOK());
- $this->assertNotNull($result->getData());
- $this->assertNotNull($result->getRawResponse());
- $bucketListInfo = $result->getData();
- $this->assertEquals(2, count($bucketListInfo->getBucketList()));
- }
- public function testParseNullXml()
- {
- $response = new ResponseCore(array(), $this->nullXml, 200);
- $result = new ListBucketsResult($response);
- $this->assertTrue($result->isOK());
- $this->assertNotNull($result->getData());
- $this->assertNotNull($result->getRawResponse());
- $bucketListInfo = $result->getData();
- $this->assertEquals(0, count($bucketListInfo->getBucketList()));
- }
- public function test403()
- {
- $errorHeader = array(
- 'x-oss-request-id' => '1a2b-3c4d'
- );
- $errorBody = <<< BBBB
- <?xml version="1.0" encoding="UTF-8"?>
- <Error>
- <Code>NoSuchBucket</Code>
- <Message>The specified bucket does not exist.</Message>
- <RequestId>566B870D207FB3044302EB0A</RequestId>
- <HostId>hello.oss-test.aliyun-inc.com</HostId>
- <BucketName>hello</BucketName>
- </Error>
- BBBB;
- $response = new ResponseCore($errorHeader, $errorBody, 403);
- try {
- new ListBucketsResult($response);
- } catch (OssException $e) {
- $this->assertEquals(
- $e->getMessage(),
- 'NoSuchBucket: The specified bucket does not exist. RequestId: 1a2b-3c4d');
- $this->assertEquals($e->getHTTPStatus(), '403');
- $this->assertEquals($e->getRequestId(), '1a2b-3c4d');
- $this->assertEquals($e->getErrorCode(), 'NoSuchBucket');
- $this->assertEquals($e->getErrorMessage(), 'The specified bucket does not exist.');
- $this->assertEquals($e->getDetails(), $errorBody);
- }
- }
- }
|