public function testDecodeEncoded() { // create two resource $res1 = imagecreatetruecolor(20, 15); imagefill($res1, 0, 0, 850736919); $res2 = imagecreatetruecolor(20, 15); imagefill($res1, 0, 0, 11876119); // create encoded $encoder = new Encoder(); $encoder->setCanvas(20, 15); $encoder->setLoops(2); $encoder->createFrameFromGdResource($res1, 100); $encoder->createFrameFromGdResource($res2, 100); $encoded = $encoder->encode(); // decode encoded $decoder = new Decoder(); $decoder->initFromData($encoded); $decoded = $decoder->decode(); // check after decoding $this->assertEquals(20, $decoded->getCanvasWidth()); $this->assertEquals(15, $decoded->getCanvasHeight()); $this->assertEquals(2, $decoded->countFrames()); $this->assertEquals(2, $decoded->getLoops()); $this->assertEquals(32, $decoded->countGlobalColors()); $this->assertFalse($decoded->hasGlobalColorTable()); foreach ($decoded->getFrames() as $frame) { $this->assertEquals(100, $frame->getDelay()); } }
public function testCreateFrameFromGdResource() { $encoder = new Encoder(); $resource = imagecreate(10, 10); $encoder->createFrameFromGdResource($resource, 10); $this->assertEquals(1, count($encoder->frames)); }