mirror of
https://github.com/Intervention/image.git
synced 2025-08-28 08:09:54 +02:00
PHPUnit 10 Migration (#1302)
* Bump PHPUnit dependencies * Set return type of base TestCase methods From the [PHPUnit 8 release notes][1], the `TestCase` methods below now declare a `void` return type: - `setUpBeforeClass()` - `setUp()` - `assertPreConditions()` - `assertPostConditions()` - `tearDown()` - `tearDownAfterClass()` - `onNotSuccessfulTest()` [1]: https://phpunit.de/announcements/phpunit-8.html * Ignore PHPUnit cache folder * Adopt PHP attributes in test classes * Declare data providers as `static` * Add return types to test methods * Define test classes as `final` * Migrate phpunit.xml to phpunit 10 * Correct phpunit attribute class name * Rename base test class * Restructure test folders * Fix test image paths * Only set rules for php files in .editorconfig * Remove php unit flag in local test env --------- Co-authored-by: Shift <shift@laravelshift.com>
This commit is contained in:
40
tests/Unit/Drivers/Imagick/Encoders/AvifEncoderTest.php
Normal file
40
tests/Unit/Drivers/Imagick/Encoders/AvifEncoderTest.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\AvifEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\AvifEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\AvifEncoder::class)]
|
||||
final class AvifEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'png');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new AvifEncoder(10);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/avif', (string) $result);
|
||||
}
|
||||
}
|
43
tests/Unit/Drivers/Imagick/Encoders/BmpEncoderTest.php
Normal file
43
tests/Unit/Drivers/Imagick/Encoders/BmpEncoderTest.php
Normal file
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\BmpEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateImagickTestImage;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\BmpEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\BmpEncoder::class)]
|
||||
final class BmpEncoderTest extends BaseTestCase
|
||||
{
|
||||
use CanCreateImagickTestImage;
|
||||
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'png');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new BmpEncoder();
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType(['image/bmp', 'image/x-ms-bmp'], (string) $result);
|
||||
}
|
||||
}
|
57
tests/Unit/Drivers/Imagick/Encoders/GifEncoderTest.php
Normal file
57
tests/Unit/Drivers/Imagick/Encoders/GifEncoderTest.php
Normal file
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\GifEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateImagickTestImage;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\GifEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\GifEncoder::class)]
|
||||
final class GifEncoderTest extends BaseTestCase
|
||||
{
|
||||
use CanCreateImagickTestImage;
|
||||
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
|
||||
$frame = new Imagick();
|
||||
$frame->newImage(30, 20, new ImagickPixel('red'), 'png');
|
||||
$frame->setImageDelay(50);
|
||||
$imagick->addImage($frame);
|
||||
|
||||
$frame = new Imagick();
|
||||
$frame->newImage(30, 20, new ImagickPixel('green'), 'png');
|
||||
$frame->setImageDelay(50);
|
||||
$imagick->addImage($frame);
|
||||
|
||||
$frame = new Imagick();
|
||||
$frame->newImage(30, 20, new ImagickPixel('blue'), 'png');
|
||||
$frame->setImageDelay(50);
|
||||
$imagick->addImage($frame);
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new GifEncoder();
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/gif', (string) $result);
|
||||
}
|
||||
}
|
43
tests/Unit/Drivers/Imagick/Encoders/HeicEncoderTest.php
Normal file
43
tests/Unit/Drivers/Imagick/Encoders/HeicEncoderTest.php
Normal file
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\HeicEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateImagickTestImage;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\HeicEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\HeicEncoder::class)]
|
||||
final class HeicEncoderTest extends BaseTestCase
|
||||
{
|
||||
use CanCreateImagickTestImage;
|
||||
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'jpg');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new HeicEncoder(75);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/heic', (string) $result);
|
||||
}
|
||||
}
|
40
tests/Unit/Drivers/Imagick/Encoders/Jpeg2000EncoderTest.php
Normal file
40
tests/Unit/Drivers/Imagick/Encoders/Jpeg2000EncoderTest.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\Jpeg2000Encoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\Jpeg2000Encoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\Jpeg2000Encoder::class)]
|
||||
final class Jpeg2000EncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'png');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new Jpeg2000Encoder(75);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/jp2', (string) $result);
|
||||
}
|
||||
}
|
40
tests/Unit/Drivers/Imagick/Encoders/JpegEncoderTest.php
Normal file
40
tests/Unit/Drivers/Imagick/Encoders/JpegEncoderTest.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\JpegEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\JpegEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\JpegEncoder::class)]
|
||||
final class JpegEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'png');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new JpegEncoder(75);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/jpeg', (string) $result);
|
||||
}
|
||||
}
|
43
tests/Unit/Drivers/Imagick/Encoders/PngEncoderTest.php
Normal file
43
tests/Unit/Drivers/Imagick/Encoders/PngEncoderTest.php
Normal file
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\PngEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateImagickTestImage;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\PngEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\PngEncoder::class)]
|
||||
final class PngEncoderTest extends BaseTestCase
|
||||
{
|
||||
use CanCreateImagickTestImage;
|
||||
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'jpg');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new PngEncoder(75);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/png', (string) $result);
|
||||
}
|
||||
}
|
40
tests/Unit/Drivers/Imagick/Encoders/TiffEncoderTest.php
Normal file
40
tests/Unit/Drivers/Imagick/Encoders/TiffEncoderTest.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\TiffEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\TiffEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\TiffEncoder::class)]
|
||||
final class TiffEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'png');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new TiffEncoder();
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/tiff', (string) $result);
|
||||
}
|
||||
}
|
40
tests/Unit/Drivers/Imagick/Encoders/WebpEncoderTest.php
Normal file
40
tests/Unit/Drivers/Imagick/Encoders/WebpEncoderTest.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Imagick\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Imagick;
|
||||
use ImagickPixel;
|
||||
use Intervention\Image\Drivers\Imagick\Core;
|
||||
use Intervention\Image\Drivers\Imagick\Driver;
|
||||
use Intervention\Image\Encoders\WebpEncoder;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('imagick')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\WebpEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Imagick\Encoders\WebpEncoder::class)]
|
||||
final class WebpEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$imagick = new Imagick();
|
||||
$imagick->newImage(3, 2, new ImagickPixel('red'), 'png');
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core($imagick)
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new WebpEncoder(75);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/webp', (string) $result);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user