diff --git a/tests/Drivers/Gd/CoreTest.php b/tests/Drivers/Gd/CoreTest.php new file mode 100644 index 00000000..25f07842 --- /dev/null +++ b/tests/Drivers/Gd/CoreTest.php @@ -0,0 +1,51 @@ +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()); + } +} diff --git a/tests/Drivers/Imagick/CoreTest.php b/tests/Drivers/Imagick/CoreTest.php new file mode 100644 index 00000000..8ea2101b --- /dev/null +++ b/tests/Drivers/Imagick/CoreTest.php @@ -0,0 +1,58 @@ +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); + } +}