1
0
mirror of https://github.com/Intervention/image.git synced 2025-09-02 18:32:56 +02:00

Add core tests

This commit is contained in:
Oliver Vogel
2023-11-25 15:02:13 +01:00
parent cd2f72f011
commit 8334cfaf20
2 changed files with 109 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
<?php
namespace Intervention\Image\Tests\Drivers\Gd;
use GdImage;
use Intervention\Image\Drivers\Gd\Core;
use Intervention\Image\Drivers\Gd\Frame;
use Intervention\Image\Tests\TestCase;
class CoreTest extends TestCase
{
public function testNative(): void
{
$core = new Core([
new Frame(imagecreatetruecolor(3, 2))
]);
$this->assertInstanceOf(GdImage::class, $core->native());
}
public function testSetNative(): void
{
$gd1 = imagecreatetruecolor(3, 2);
$gd2 = imagecreatetruecolor(3, 2);
$core = new Core([new Frame($gd1)]);
$this->assertEquals($gd1, $core->native());
$core->setNative($gd2);
$this->assertEquals($gd2, $core->native());
}
public function testFrame(): void
{
$core = new Core([
new Frame(imagecreatetruecolor(3, 2)),
new Frame(imagecreatetruecolor(3, 2)),
]);
$this->assertInstanceOf(Frame::class, $core->frame(0));
$this->assertInstanceOf(Frame::class, $core->frame(1));
}
public function testSetGetLoops(): void
{
$core = new Core([
new Frame(imagecreatetruecolor(3, 2))
]);
$this->assertEquals(0, $core->loops());
$result = $core->setLoops(12);
$this->assertInstanceOf(Core::class, $result);
$this->assertEquals(12, $core->loops());
}
}

View File

@@ -0,0 +1,58 @@
<?php
namespace Intervention\Image\Tests\Drivers\Imagick;
use Imagick;
use ImagickPixel;
use Intervention\Image\Drivers\Imagick\Core;
use Intervention\Image\Drivers\Imagick\Frame;
use Intervention\Image\Tests\TestCase;
class CoreTest extends TestCase
{
public function testConstructor(): void
{
$imagick = new Imagick();
$core = new Core($imagick);
$this->assertInstanceOf(Core::class, $core);
}
public function testCount(): void
{
$imagick = new Imagick();
$imagick->newImage(100, 100, new ImagickPixel('red'));
$imagick->addImage(clone $imagick);
$core = new Core($imagick);
$this->assertEquals(2, $core->count());
}
public function testIterator(): void
{
$imagick = new Imagick();
$imagick->newImage(100, 100, new ImagickPixel('red'));
$imagick->addImage(clone $imagick);
$core = new Core($imagick);
foreach ($core as $frame) {
$this->assertInstanceOf(Frame::class, $frame);
}
}
public function testNative(): void
{
$imagick = new Imagick();
$imagick->newImage(100, 100, new ImagickPixel('red'));
$core = new Core($imagick);
$this->assertInstanceOf(Imagick::class, $core->native());
}
public function testSetGetLoops(): void
{
$imagick = new Imagick();
$imagick->newImage(100, 100, new ImagickPixel('red'));
$core = new Core($imagick);
$this->assertEquals(0, $core->loops());
$result = $core->setLoops(12);
$this->assertEquals(12, $core->loops());
$this->assertInstanceOf(Core::class, $result);
}
}