public function testCreateObjectOnAmazon() { $binary = new Binary('aContent', 'image/jpeg', 'jpeg'); $s3 = $this->getS3ClientMock(); $s3->expects($this->once())->method('putObject')->will($this->returnValue($this->getS3ResponseMock())); $resolver = new AwsS3Resolver($s3, 'images.example.com'); $this->assertNull($resolver->store($binary, 'thumb/foobar.jpg', 'thumb')); }
public function testObjectOptionsPassedToS3ClintOnCreate() { $binary = new Binary('aContent', 'image/jpeg', 'jpeg'); $s3 = $this->getS3ClientMock(); $s3->expects($this->once())->method('putObject')->with(array('CacheControl' => 'max-age=86400', 'ACL' => 'public-read', 'Bucket' => 'images.example.com', 'Key' => 'filter/images/foobar.jpg', 'Body' => 'aContent', 'ContentType' => 'image/jpeg')); $resolver = new AwsS3Resolver($s3, 'images.example.com'); $resolver->setPutOption('CacheControl', 'max-age=86400'); $resolver->store($binary, 'images/foobar.jpg', 'filter'); }
public function testCreatedObjectRedirects() { $response = new Response(); $response->setContent('foo'); $response->headers->set('Content-Type', 'image/jpeg'); $responseMock = $this->getS3ResponseMock(); $s3 = $this->getMock('Aws\\S3\\S3Client'); $s3->expects($this->once())->method('putObject')->will($this->returnValue($responseMock)); $responseMock->expects($this->once())->method('get')->with('ObjectURL')->will($this->returnValue('http://images.example.com/thumb/foobar.jpg')); $resolver = new AwsS3Resolver($s3, 'images.example.com'); $this->assertSame($response, $resolver->store($response, 'thumb/foobar.jpg', 'thumb')); $this->assertEquals(301, $response->getStatusCode()); $this->assertEquals('http://images.example.com/thumb/foobar.jpg', $response->headers->get('Location')); }