![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/vendor/magento/module-theme/Test/Unit/Model/Design/Backend/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Theme\Test\Unit\Model\Design\Backend; use Magento\Config\Model\Config\Backend\File\RequestData\RequestDataInterface; use Magento\Framework\App\Cache\TypeListInterface; use Magento\Framework\App\Config\ScopeConfigInterface; use Magento\Framework\Data\Collection\AbstractDb; use Magento\Framework\Filesystem; use Magento\Framework\Filesystem\Io\File; use Magento\Framework\Model\Context; use Magento\Framework\Model\ResourceModel\AbstractResource; use Magento\Framework\Registry; use Magento\Framework\UrlInterface; use Magento\MediaStorage\Helper\File\Storage\Database; use Magento\MediaStorage\Model\File\UploaderFactory; use Magento\Theme\Model\Design\Backend\Image; /** * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ class ImageTest extends \PHPUnit\Framework\TestCase { /** @var Image */ private $imageBackend; /** @var File */ private $ioFileSystem; /** * @inheritdoc */ public function setUp(): void { $context = $this->getMockObject(Context::class); $registry = $this->getMockObject(Registry::class); $config = $this->getMockObject(ScopeConfigInterface::class); $cacheTypeList = $this->getMockObject(TypeListInterface::class); $uploaderFactory = $this->getMockObject(UploaderFactory::class); $requestData = $this->getMockObject(RequestDataInterface::class); $filesystem = $this->getMockObject(Filesystem::class); $urlBuilder = $this->getMockObject(UrlInterface::class); $databaseHelper = $this->getMockObject(Database::class); $abstractResource = $this->getMockObject(AbstractResource::class); $abstractDb = $this->getMockObject(AbstractDb::class); $this->ioFileSystem = $this->getMockObject(File::class); $this->imageBackend = new Image( $context, $registry, $config, $cacheTypeList, $uploaderFactory, $requestData, $filesystem, $urlBuilder, $abstractResource, $abstractDb, [], $databaseHelper, $this->ioFileSystem ); } /** * @inheritdoc */ public function tearDown(): void { unset($this->imageBackend); } /** * @param string $class * @param array $methods * @return \PHPUnit\Framework\MockObject\MockObject */ private function getMockObject(string $class, array $methods = []): \PHPUnit\Framework\MockObject\MockObject { $builder = $this->getMockBuilder($class) ->disableOriginalConstructor(); if (count($methods)) { $builder->setMethods($methods); } return $builder->getMock(); } /** * Test for beforeSave method with invalid file extension. */ public function testBeforeSaveWithInvalidExtensionFile() { $this->expectException( \Magento\Framework\Exception\LocalizedException::class ); $this->expectExceptionMessage( 'Something is wrong with the file upload settings.' ); $invalidFileName = 'fileName.invalidExtension'; $this->imageBackend->setData( [ 'value' => [ [ 'file' => $invalidFileName, ] ], ] ); $expectedPathInfo = [ 'extension' => 'invalidExtension' ]; $this->ioFileSystem ->expects($this->any()) ->method('getPathInfo') ->with($invalidFileName) ->willReturn($expectedPathInfo); $this->imageBackend->beforeSave(); } }