You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
think-library/vendor/aliyuncs/oss-sdk-php/tests/OSS/Tests/GetBucketTagsResultTest.php

78 lines
2.3 KiB

<?php
namespace OSS\Tests;
use OSS\Result\GetBucketTagsResult;
use OSS\Core\OssException;
use OSS\Http\ResponseCore;
class GetBucketTagsResultTest extends \PHPUnit\Framework\TestCase
{
private $validXml = <<<BBBB
<?xml version="1.0" ?>
<Tagging>
<TagSet>
<Tag>
<Key>testa</Key>
<Value>value1-test</Value>
</Tag>
<Tag>
<Key>testb</Key>
<Value>value2-test</Value>
</Tag>
</TagSet>
</Tagging>
BBBB;
private $invalidXml = <<<BBBB
<?xml version="1.0" ?>
<Tagging>
</Tagging>
BBBB;
private $invalidXml2 = <<<BBBB
<?xml version="1.0" ?>
<Tagging>
<TagSet>
</TagSet>
</Tagging>
BBBB;
public function testParseValidXml()
{
$response = new ResponseCore(array(), $this->validXml, 200);
$result = new GetBucketTagsResult($response);
$this->assertTrue($result->isOK());
$this->assertNotNull($result->getData());
$this->assertNotNull($result->getRawResponse());
$config = $result->getData();
$this->assertEquals(2, count($config->getTags()));
$this->assertEquals("testa", $config->getTags()[0]->getKey());
$this->assertEquals("value1-test", $config->getTags()[0]->getValue());
$this->assertEquals("testb", $config->getTags()[1]->getKey());
$this->assertEquals("value2-test", $config->getTags()[1]->getValue());
}
public function testParseNullXml()
{
$response = new ResponseCore(array(), "", 200);
$result = new GetBucketTagsResult($response);
$config = $result->getData();
$this->assertEquals(0, count($config->getTags()));
}
public function testParseInvalidXml()
{
$response = new ResponseCore(array(), $this->invalidXml, 200);
$result = new GetBucketTagsResult($response);
$config = $result->getData();
$this->assertEquals(0, count($config->getTags()));
$response = new ResponseCore(array(), $this->invalidXml2, 200);
$result = new GetBucketTagsResult($response);
$config = $result->getData();
$this->assertEquals(0, count($config->getTags()));
}
}