ImageUtilsTest.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace App\tests\Unit\Service\File\Utils;
  3. use App\Entity\Core\File;
  4. use App\Service\Utils\FileUtils;
  5. use App\Tests\Unit\TestToolsTrait;
  6. use Liip\ImagineBundle\Imagine\Data\DataManager;
  7. use Liip\ImagineBundle\Imagine\Filter\FilterManager;
  8. use Liip\ImagineBundle\Model\Binary;
  9. use PHPUnit\Framework\MockObject\MockObject;
  10. use PHPUnit\Framework\TestCase;
  11. use Psr\Log\LoggerInterface;
  12. class FileUtilsTest extends TestCase
  13. {
  14. use TestToolsTrait;
  15. private MockObject | DataManager $dataManager;
  16. private MockObject | FilterManager $filterManager;
  17. private MockObject | LoggerInterface $logger;
  18. public function setUp(): void
  19. {
  20. $this->dataManager = $this->getMockBuilder(DataManager::class)->disableOriginalConstructor()->getMock();
  21. $this->filterManager = $this->getMockBuilder(FilterManager::class)->disableOriginalConstructor()->getMock();
  22. $this->logger = $this->getMockBuilder(LoggerInterface::class)->disableOriginalConstructor()->getMock();
  23. }
  24. public function getFileUtilsMockFor(string $methodName): FileUtils | MockObject {
  25. return $this->getMockBuilder(FileUtils::class)
  26. ->setConstructorArgs([$this->dataManager, $this->filterManager, $this->logger])
  27. ->setMethodsExcept([$methodName])
  28. ->getMock();
  29. }
  30. /**
  31. * @return void
  32. *@see FileUtils::isImage()
  33. */
  34. public function testIsImage()
  35. {
  36. $file = $this->getMockBuilder(File::class)->getMock();
  37. $file->method('getMimeType')->willReturn('image/jpeg');
  38. $FileUtils = $this->getFileUtilsMockFor('isImage');
  39. $this->assertTrue($FileUtils->isImage($file));
  40. }
  41. }