Skip to content
Snippets Groups Projects
Select Git revision
  • 52ce43ce77b434e6a028dbbf0953e9891fdf7c41
  • main default protected
  • register-logging-channel
  • expr-lang
  • ci-82
  • attr-events
  • locale-wip
  • custom-routes
  • v0.1.85
  • v0.1.84
  • v0.1.83
  • v0.1.82
  • v0.1.81
  • v0.1.80
  • v0.1.79
  • v0.1.78
  • v0.1.77
  • v0.1.76
  • v0.1.75
  • v0.1.74
  • v0.1.73
  • v0.1.72
  • v0.1.71
  • v0.1.70
  • v0.1.69
  • v0.1.68
  • v0.1.67
  • v0.1.65
28 results

HelpersTest.php

Blame
  • Christoph Reiter's avatar
    Reiter, Christoph authored
    Add some return types to avoid warnings with PHP 8.1
    52ce43ce
    History
    HelpersTest.php 2.13 KiB
    <?php
    
    declare(strict_types=1);
    
    namespace Dbp\Relay\CoreBundle\Tests\Helpers;
    
    use Dbp\Relay\CoreBundle\Helpers\ArrayFullPaginator;
    use Dbp\Relay\CoreBundle\Helpers\ArrayPartPaginator;
    use Dbp\Relay\CoreBundle\Helpers\GuzzleTools;
    use Dbp\Relay\CoreBundle\Helpers\MimeTools;
    use PHPUnit\Framework\TestCase;
    use Psr\Log\NullLogger;
    
    class HelpersTest extends TestCase
    {
        public function testArrayFullPaginator()
        {
            $paginator = new ArrayFullPaginator([4, 5, 6], 1, 2);
            $this->assertSame($paginator->getCurrentPage(), 1.0);
            $this->assertSame($paginator->getItemsPerPage(), 2.0);
            $this->assertSame($paginator->getTotalItems(), 3.0);
            $this->assertSame($paginator->current(), 4);
            $this->assertSame($paginator->key(), 0);
            $this->assertTrue($paginator->valid());
            $paginator->next();
            $this->assertSame($paginator->current(), 5);
            $this->assertSame($paginator->getLastPage(), 2.0);
        }
    
        public function testArrayPartPaginator()
        {
            $paginator = new ArrayPartPaginator([4, 5, 6], 3, 1, 2);
            $this->assertSame($paginator->getCurrentPage(), 1.0);
            $this->assertSame($paginator->getItemsPerPage(), 2.0);
            $this->assertSame($paginator->getTotalItems(), 3.0);
            $this->assertSame($paginator->current(), 4);
            $this->assertSame($paginator->key(), 0);
            $this->assertTrue($paginator->valid());
            $paginator->next();
            $this->assertSame($paginator->current(), 5);
            $this->assertSame($paginator->getLastPage(), 2.0);
        }
    
        public function testGuzzleTools()
        {
            $middleware = GuzzleTools::createLoggerMiddleware(new NullLogger());
            $this->assertNotNull($middleware);
        }
    
        public function testMimeTools()
        {
            $this->assertSame(MimeTools::getDataURI('foobar', 'text/html'), 'data:text/html;base64,Zm9vYmFy');
    
            $this->assertSame(
                MimeTools::getMimeType(base64_decode('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12Mo3CQPAALaAUMu4mcOAAAAAElFTkSuQmCC', true)),
    'image/png');
    
            $this->assertSame(MimeTools::getFileExtensionForMimeType('image/png'), 'png');
        }
    }