/**
  * Generates a thumbnail image
  *
  * @param  sfWebRequest $request The symfony request object
  * @return string
  */
 public function executeIndex(sfWebRequest $request)
 {
     if (in_array('sfImageSource', stream_get_wrappers())) {
         stream_wrapper_unregister('sfImageSource');
     }
     $streamwrapper = $this->getRoute()->getImageSourceStreamWrapper();
     stream_wrapper_register('sfImageSource', $streamwrapper) or die('Failed to register protocol..');
     $formats = sfConfig::get('thumbnailing_formats', array());
     $thumbnailer = new sfImageTransformManager($formats);
     $uri = $this->getRoute()->getImageSourceURI();
     $thumbnail = $thumbnailer->generate($uri, $request->getParameter('format', 'default'));
     $response = $this->getResponse();
     $response->setContentType($thumbnail->getMIMEType());
     $response->setContent($thumbnail->toString());
     return sfView::NONE;
 }
 public function testGenerate()
 {
     $manager = new sfImageTransformManager($this->dummy_formats);
     $this->assertType('sfImage', $manager->generate('sfImageSource://mock', 'original'));
 }