48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
		
			
		
	
	
			48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
|  | <?php | ||
|  | namespace OSS\Tests; | ||
|  | 
 | ||
|  | use OSS\Core\OssException; | ||
|  | 
 | ||
|  | require_once __DIR__ . DIRECTORY_SEPARATOR . 'TestOssClientBase.php'; | ||
|  | 
 | ||
|  | class OssClientBucketPolicyTest extends TestOssClientBase | ||
|  | { | ||
|  |     public function testBucket() | ||
|  |     { | ||
|  |         $policy_str = <<< BBBB | ||
|  |         { | ||
|  |             "Version":"1", | ||
|  |             "Statement":[ | ||
|  |               { | ||
|  |                 "Action":[ | ||
|  |                   "oss:PutObject", | ||
|  |                   "oss:GetObject" | ||
|  |                 ], | ||
|  |                 "Effect":"Deny", | ||
|  |                 "Principal":["1234567890"], | ||
|  |                 "Resource":["acs:oss:*:1234567890:*/*"] | ||
|  |               } | ||
|  |             ] | ||
|  |         } | ||
|  |         BBBB; | ||
|  | 
 | ||
|  |         try { | ||
|  |             $this->ossClient->deleteBucketPolicy($this->bucket); | ||
|  |             $policy = $this->ossClient->getBucketPolicy($this->bucket); | ||
|  |             $this->assertTrue(false); | ||
|  |         } catch (OssException $e) { | ||
|  |             $this->assertTrue(true); | ||
|  |             $this->assertEquals("NoSuchBucketPolicy", $e->getErrorCode()); | ||
|  |         } | ||
|  | 
 | ||
|  |         try { | ||
|  |             $this->ossClient->putBucketPolicy($this->bucket, $policy_str); | ||
|  |             $policy = $this->ossClient->getBucketPolicy($this->bucket); | ||
|  |             $this->assertEquals($policy_str, $policy); | ||
|  |             $this->ossClient->deleteBucketPolicy($this->bucket); | ||
|  |         } catch (OssException $e) { | ||
|  |             $this->assertTrue(false); | ||
|  |         } | ||
|  |     } | ||
|  | } |