Contao\CoreBundle\Test\Image\ImageFactoryTest::testExecuteResizeHook PHP Method

testExecuteResizeHook() public method

Tests the executeResize hook.
    public function testExecuteResizeHook()
    {
        define('TL_ROOT', $this->getRootDir());
        $GLOBALS['TL_CONFIG']['validImageTypes'] = 'jpg';
        $path = $this->getRootDir() . '/images/dummy.jpg';
        $resizer = new LegacyResizer($this->getRootDir() . '/assets/images', new ResizeCalculator());
        $imagine = new Imagine();
        $framework = $this->getMockBuilder('Contao\\CoreBundle\\Framework\\ContaoFramework')->disableOriginalConstructor()->getMock();
        $filesModel = $this->getMock('Contao\\FilesModel');
        $filesAdapter = $this->getMockBuilder('Contao\\CoreBundle\\Framework\\Adapter')->disableOriginalConstructor()->getMock();
        $filesAdapter->expects($this->any())->method('__call')->willReturn($filesModel);
        $framework->expects($this->any())->method('getAdapter')->willReturn($filesAdapter);
        $imageFactory = $this->createImageFactory($resizer, $imagine, $imagine, null, $framework);
        $GLOBALS['TL_HOOKS'] = ['executeResize' => [[get_class($this), 'executeResizeHookCallback']]];
        $image = $imageFactory->create($path, [100, 100, ResizeConfiguration::MODE_CROP]);
        $this->assertEquals($this->getRootDir() . '/assets/images/dummy.jpg&executeResize_100_100_crop__Contao-Image.jpg', $image->getPath());
        $image = $imageFactory->create($path, [200, 200, ResizeConfiguration::MODE_CROP]);
        $this->assertEquals($this->getRootDir() . '/assets/images/dummy.jpg&executeResize_200_200_crop__Contao-Image.jpg', $image->getPath());
        $image = $imageFactory->create($path, [200, 200, ResizeConfiguration::MODE_CROP], $this->getRootDir() . '/target.jpg');
        $this->assertEquals($this->getRootDir() . '/assets/images/dummy.jpg&executeResize_200_200_crop_target.jpg_Contao-Image.jpg', $image->getPath());
        unset($GLOBALS['TL_HOOKS']);
    }