public function testClearResolversCacheClearsAll() { $resolver = $this->getMockResolver(); $resolver->expects($this->exactly(5))->method('clear')->with('imagine_cache'); $cacheManager = new CacheManager($this->getMockFilterConfiguration(), $this->getMockRouter(), $this->fixturesDir . '/assets', 'default'); $cacheManager->addResolver('default', $resolver); $cacheManager->addResolver('thumbnail1', $resolver); $cacheManager->addResolver('thumbnail2', $resolver); $cacheManager->addResolver('thumbnail3', $resolver); $cacheManager->addResolver('thumbnail4', $resolver); $cacheManager->clearResolversCache('imagine_cache'); }
public function testFilterActionLive() { $router = $this->getMockRouter(); $router->expects($this->any())->method('generate')->with('_imagine_thumbnail', array('path' => 'cats.jpeg'), false)->will($this->returnValue('/media/cache/thumbnail/cats.jpeg')); $dataLoader = new FileSystemLoader($this->imagine, array(), $this->dataDir); $dataManager = new DataManager($this->configuration, 'filesystem'); $dataManager->addLoader('filesystem', $dataLoader); $filterLoader = new ThumbnailFilterLoader(); $filterManager = new FilterManager($this->configuration); $filterManager->addLoader('thumbnail', $filterLoader); $webPathResolver = new WebPathResolver($this->filesystem); $cacheManager = new CacheManager($this->configuration, $router, $this->webRoot, 'web_path'); $cacheManager->addResolver('web_path', $webPathResolver); $controller = new ImagineController($dataManager, $filterManager, $cacheManager); $request = Request::create('/media/cache/thumbnail/cats.jpeg'); $response = $controller->filterAction($request, 'cats.jpeg', 'thumbnail'); $targetPath = realpath($this->webRoot) . '/media/cache/thumbnail/cats.jpeg'; $this->assertInstanceOf('Symfony\\Component\\HttpFoundation\\Response', $response); $this->assertEquals(201, $response->getStatusCode()); $this->assertTrue(file_exists($targetPath)); $this->assertNotEmpty(file_get_contents($targetPath)); return $controller; }
public function testShouldReturnUrlChangedInPostResolveEvent() { $dispatcher = $this->createEventDispatcherMock(); $dispatcher ->expects($this->at(1)) ->method('dispatch') ->with(ImagineEvents::POST_RESOLVE, $this->isInstanceOf('Liip\ImagineBundle\Events\CacheResolveEvent')) ->will($this->returnCallback(function ($name, $event) { $event->setUrl('changed_url'); })) ; $cacheManager = new CacheManager( $this->createFilterConfigurationMock(), $this->createRouterMock(), new Signer('secret'), $dispatcher ); $cacheManager->addResolver('default', $this->createResolverMock()); $url = $cacheManager->resolve('cats.jpg', 'thumbnail'); $this->assertEquals('changed_url', $url); }