public function testStringContent()
 {
     $upload = new FormUpload();
     $upload->setName('company[logo]');
     $upload->setFilename('google.png');
     $upload->setContent(file_get_contents(__DIR__ . '/Fixtures/google.png'));
     $this->assertEquals(array('Content-Disposition: form-data; name="company[logo]"; filename="google.png"', 'Content-Type: image/png'), $upload->getHeaders());
 }
 public function testFilenamelessUpload()
 {
     $this->setExpectedException('LogicException');
     $upload = new FormUpload();
     $upload->setContent('foobar');
     $request = new FormRequest();
     $request->setField('user[name]', 'Kris');
     $request->setField('user[image]', $upload);
     $content = $request->getContent();
 }
 /**
  * @param  string $binaryImage
  * @param  string $filename
  * @param  int    $expire
  *
  * @return Response
  */
 public function call($binaryImage, $filename, $expire)
 {
     $response = new Response();
     $image = new FormUpload();
     $image->setFilename($filename);
     $image->setContent($binaryImage);
     $request = $this->buildRequest($image, $expire);
     $this->client->setOption(CURLOPT_TIMEOUT, 10000);
     $this->client->send($request, $response);
     return $this->processResponse($response);
 }
 public function provideClientAndUpload()
 {
     $stringUpload = new FormUpload();
     $stringUpload->setFilename('google.png');
     $stringUpload->setContent(file_get_contents(__DIR__ . '/../Message/Fixtures/google.png'));
     $uploads = array($stringUpload, new FormUpload(__DIR__ . '/../Message/Fixtures/google.png'));
     $clients = $this->provideClient();
     $data = array();
     foreach ($clients as $client) {
         foreach ($uploads as $upload) {
             $data[] = array($client[0], $upload);
         }
     }
     return $data;
 }