TestOssClientBase.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace OSS\Tests;
  3. use OSS\OssClient;
  4. require_once __DIR__ . DIRECTORY_SEPARATOR . 'Common.php';
  5. class TestOssClientBase extends \PHPUnit_Framework_TestCase
  6. {
  7. /**
  8. * @var OssClient
  9. */
  10. protected $ossClient;
  11. /**
  12. * @var string
  13. */
  14. protected $bucket;
  15. public function setUp()
  16. {
  17. $this->bucket = Common::getBucketName() . rand(100000, 999999);
  18. $this->ossClient = Common::getOssClient();
  19. $this->ossClient->createBucket($this->bucket);
  20. }
  21. public function tearDown()
  22. {
  23. if (!$this->ossClient->doesBucketExist($this->bucket)) {
  24. return;
  25. }
  26. $objects = $this->ossClient->listObjects(
  27. $this->bucket, array('max-keys' => 1000, 'delimiter' => ''))->getObjectList();
  28. $keys = array();
  29. foreach ($objects as $obj) {
  30. $keys[] = $obj->getKey();
  31. }
  32. if (count($keys) > 0) {
  33. $this->ossClient->deleteObjects($this->bucket, $keys);
  34. }
  35. $uploads = $this->ossClient->listMultipartUploads($this->bucket)->getUploads();
  36. foreach ($uploads as $up) {
  37. $this->ossClient->abortMultipartUpload($this->bucket, $up->getKey(), $up->getUploadId());
  38. }
  39. $this->ossClient->deleteBucket($this->bucket);
  40. }
  41. }