mirror of
https://github.com/Intervention/image.git
synced 2025-08-26 23:35:12 +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:
38
tests/Unit/Drivers/Gd/Encoders/AvifEncoderTest.php
Normal file
38
tests/Unit/Drivers/Gd/Encoders/AvifEncoderTest.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Gd\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Intervention\Image\Drivers\Gd\Core;
|
||||
use Intervention\Image\Drivers\Gd\Driver;
|
||||
use Intervention\Image\Encoders\AvifEncoder;
|
||||
use Intervention\Image\Drivers\Gd\Frame;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('gd')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\AvifEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Gd\Encoders\AvifEncoder::class)]
|
||||
final class AvifEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core([
|
||||
new Frame(imagecreatetruecolor(3, 2))
|
||||
])
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new AvifEncoder(10);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/avif', (string) $result);
|
||||
}
|
||||
}
|
38
tests/Unit/Drivers/Gd/Encoders/BmpEncoderTest.php
Normal file
38
tests/Unit/Drivers/Gd/Encoders/BmpEncoderTest.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Gd\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Intervention\Image\Drivers\Gd\Core;
|
||||
use Intervention\Image\Drivers\Gd\Driver;
|
||||
use Intervention\Image\Encoders\BmpEncoder;
|
||||
use Intervention\Image\Drivers\Gd\Frame;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('gd')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\BmpEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Gd\Encoders\BmpEncoder::class)]
|
||||
final class BmpEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core([
|
||||
new Frame(imagecreatetruecolor(3, 2))
|
||||
])
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new BmpEncoder();
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType(['image/bmp', 'image/x-ms-bmp'], (string) $result);
|
||||
}
|
||||
}
|
52
tests/Unit/Drivers/Gd/Encoders/GifEncoderTest.php
Normal file
52
tests/Unit/Drivers/Gd/Encoders/GifEncoderTest.php
Normal file
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Gd\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Intervention\Image\Drivers\Gd\Core;
|
||||
use Intervention\Image\Drivers\Gd\Driver;
|
||||
use Intervention\Image\Encoders\GifEncoder;
|
||||
use Intervention\Image\Drivers\Gd\Frame;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateGdTestImage;
|
||||
|
||||
#[RequiresPhpExtension('gd')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\GifEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Gd\Encoders\GifEncoder::class)]
|
||||
final class GifEncoderTest extends BaseTestCase
|
||||
{
|
||||
use CanCreateGdTestImage;
|
||||
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
$gd1 = imagecreatetruecolor(30, 20);
|
||||
imagefill($gd1, 0, 0, imagecolorallocate($gd1, 255, 0, 0));
|
||||
$gd2 = imagecreatetruecolor(30, 20);
|
||||
imagefill($gd2, 0, 0, imagecolorallocate($gd2, 0, 255, 0));
|
||||
$gd3 = imagecreatetruecolor(30, 20);
|
||||
imagefill($gd3, 0, 0, imagecolorallocate($gd3, 0, 0, 255));
|
||||
$frame1 = new Frame($gd1);
|
||||
$frame1->setDelay(1);
|
||||
$frame2 = new Frame($gd2);
|
||||
$frame2->setDelay(.2);
|
||||
$frame3 = new Frame($gd3);
|
||||
$frame3->setDelay(1);
|
||||
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core([$frame1, $frame2, $frame3])
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new GifEncoder();
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/gif', (string) $result);
|
||||
}
|
||||
}
|
38
tests/Unit/Drivers/Gd/Encoders/JpegEncoderTest.php
Normal file
38
tests/Unit/Drivers/Gd/Encoders/JpegEncoderTest.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Gd\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Intervention\Image\Drivers\Gd\Core;
|
||||
use Intervention\Image\Drivers\Gd\Driver;
|
||||
use Intervention\Image\Encoders\JpegEncoder;
|
||||
use Intervention\Image\Drivers\Gd\Frame;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('gd')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\JpegEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Gd\Encoders\JpegEncoder::class)]
|
||||
final class JpegEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core([
|
||||
new Frame(imagecreatetruecolor(3, 2))
|
||||
])
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new JpegEncoder(75);
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/jpeg', (string) $result);
|
||||
}
|
||||
}
|
41
tests/Unit/Drivers/Gd/Encoders/PngEncoderTest.php
Normal file
41
tests/Unit/Drivers/Gd/Encoders/PngEncoderTest.php
Normal file
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Gd\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Intervention\Image\Drivers\Gd\Core;
|
||||
use Intervention\Image\Drivers\Gd\Driver;
|
||||
use Intervention\Image\Encoders\PngEncoder;
|
||||
use Intervention\Image\Drivers\Gd\Frame;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateGdTestImage;
|
||||
|
||||
#[RequiresPhpExtension('gd')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\PngEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Gd\Encoders\PngEncoder::class)]
|
||||
final class PngEncoderTest extends BaseTestCase
|
||||
{
|
||||
use CanCreateGdTestImage;
|
||||
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core([
|
||||
new Frame(imagecreatetruecolor(3, 2))
|
||||
])
|
||||
);
|
||||
}
|
||||
|
||||
public function testEncode(): void
|
||||
{
|
||||
$image = $this->getTestImage();
|
||||
$encoder = new PngEncoder();
|
||||
$result = $encoder->encode($image);
|
||||
$this->assertMediaType('image/png', (string) $result);
|
||||
}
|
||||
}
|
38
tests/Unit/Drivers/Gd/Encoders/WebpEncoderTest.php
Normal file
38
tests/Unit/Drivers/Gd/Encoders/WebpEncoderTest.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Intervention\Image\Tests\Unit\Drivers\Gd\Encoders;
|
||||
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\Attributes\RequiresPhpExtension;
|
||||
use Intervention\Image\Drivers\Gd\Core;
|
||||
use Intervention\Image\Drivers\Gd\Driver;
|
||||
use Intervention\Image\Encoders\WebpEncoder;
|
||||
use Intervention\Image\Drivers\Gd\Frame;
|
||||
use Intervention\Image\Image;
|
||||
use Intervention\Image\Tests\BaseTestCase;
|
||||
|
||||
#[RequiresPhpExtension('gd')]
|
||||
#[CoversClass(\Intervention\Image\Encoders\WebpEncoder::class)]
|
||||
#[CoversClass(\Intervention\Image\Drivers\Gd\Encoders\WebpEncoder::class)]
|
||||
final class WebpEncoderTest extends BaseTestCase
|
||||
{
|
||||
protected function getTestImage(): Image
|
||||
{
|
||||
return new Image(
|
||||
new Driver(),
|
||||
new Core([
|
||||
new Frame(imagecreatetruecolor(3, 2))
|
||||
])
|
||||
);
|
||||
}
|
||||
|
||||
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