mirror of
https://github.com/Intervention/image.git
synced 2025-08-13 17:34:04 +02:00
Added Gd Decoder tests
This commit is contained in:
22
tests/Drivers/Gd/Decoders/Base64ImageDecoderTest.php
Normal file
22
tests/Drivers/Gd/Decoders/Base64ImageDecoderTest.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace Intervention\Image\Tests\Drivers\Gd\Decoders;
|
||||
|
||||
use Intervention\Image\Drivers\Gd\Decoders\Base64ImageDecoder;
|
||||
use Intervention\Image\Drivers\Gd\Image;
|
||||
use Intervention\Image\Tests\TestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateGdTestImage;
|
||||
|
||||
class Base64ImageDecoderTest extends TestCase
|
||||
{
|
||||
use CanCreateGdTestImage;
|
||||
|
||||
public function testDecode(): void
|
||||
{
|
||||
$decoder = new Base64ImageDecoder();
|
||||
$result = $decoder->decode(
|
||||
base64_encode($this->getTestImageData('blue.gif'))
|
||||
);
|
||||
$this->assertInstanceOf(Image::class, $result);
|
||||
}
|
||||
}
|
22
tests/Drivers/Gd/Decoders/DataUriImageDecoderTest.php
Normal file
22
tests/Drivers/Gd/Decoders/DataUriImageDecoderTest.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace Intervention\Image\Tests\Drivers\Gd\Decoders;
|
||||
|
||||
use Intervention\Image\Drivers\Gd\Decoders\DataUriImageDecoder;
|
||||
use Intervention\Image\Drivers\Gd\Image;
|
||||
use Intervention\Image\Tests\TestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateGdTestImage;
|
||||
|
||||
class DataUriImageDecoderTest extends TestCase
|
||||
{
|
||||
use CanCreateGdTestImage;
|
||||
|
||||
public function testDecode(): void
|
||||
{
|
||||
$decoder = new DataUriImageDecoder();
|
||||
$result = $decoder->decode(
|
||||
sprintf('data:image/jpeg;base64,%s', base64_encode($this->getTestImageData('blue.gif')))
|
||||
);
|
||||
$this->assertInstanceOf(Image::class, $result);
|
||||
}
|
||||
}
|
22
tests/Drivers/Gd/Decoders/FilePathImageDecoderTest.php
Normal file
22
tests/Drivers/Gd/Decoders/FilePathImageDecoderTest.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace Intervention\Image\Tests\Drivers\Gd\Decoders;
|
||||
|
||||
use Intervention\Image\Drivers\Gd\Decoders\FilePathImageDecoder;
|
||||
use Intervention\Image\Drivers\Gd\Image;
|
||||
use Intervention\Image\Tests\TestCase;
|
||||
use Intervention\Image\Tests\Traits\CanCreateGdTestImage;
|
||||
|
||||
class FilePathImageDecoderTest extends TestCase
|
||||
{
|
||||
use CanCreateGdTestImage;
|
||||
|
||||
public function testDecode(): void
|
||||
{
|
||||
$decoder = new FilePathImageDecoder();
|
||||
$result = $decoder->decode(
|
||||
$this->getTestImagePath()
|
||||
);
|
||||
$this->assertInstanceOf(Image::class, $result);
|
||||
}
|
||||
}
|
26
tests/Drivers/Gd/Decoders/HexColorDecoderTest.php
Normal file
26
tests/Drivers/Gd/Decoders/HexColorDecoderTest.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace Intervention\Image\Tests\Drivers\Gd\Decoders;
|
||||
|
||||
use Intervention\Image\Drivers\Gd\Decoders\HexColorDecoder;
|
||||
use Intervention\Image\Drivers\Gd\Color;
|
||||
use Intervention\Image\Tests\TestCase;
|
||||
|
||||
class HexColorDecoderTest extends TestCase
|
||||
{
|
||||
public function testDecode(): void
|
||||
{
|
||||
$decoder = new HexColorDecoder();
|
||||
$result = $decoder->decode('ccc');
|
||||
$this->assertInstanceOf(Color::class, $result);
|
||||
|
||||
$result = $decoder->decode('#ccc');
|
||||
$this->assertInstanceOf(Color::class, $result);
|
||||
|
||||
$result = $decoder->decode('cccccc');
|
||||
$this->assertInstanceOf(Color::class, $result);
|
||||
|
||||
$result = $decoder->decode('#cccccc');
|
||||
$this->assertInstanceOf(Color::class, $result);
|
||||
}
|
||||
}
|
@@ -9,10 +9,20 @@ use Intervention\Image\Drivers\Gd\Image;
|
||||
|
||||
trait CanCreateGdTestImage
|
||||
{
|
||||
public function getTestImagePath($filename = 'test.jpg'): string
|
||||
{
|
||||
return sprintf('%s/../images/%s', __DIR__, $filename);
|
||||
}
|
||||
|
||||
public function getTestImageData($filename = 'test.jpg'): string
|
||||
{
|
||||
return file_get_contents($this->getTestImagePath($filename));
|
||||
}
|
||||
|
||||
public function createTestImage($filename = 'test.jpg'): Image
|
||||
{
|
||||
return $this->testImageDecoder()->handle(
|
||||
sprintf('%s/../images/%s', __DIR__, $filename)
|
||||
$this->getTestImagePath($filename)
|
||||
);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user