%PDF- %GIF98; %PNG; .
Cyber Programmer
Logo of a company Server : Apache
System : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : addictionfreeind ( 1003)
PHP Version : 7.2.34
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/addictionfreeind/www/vendor/jasny/twig-extensions/tests/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/addictionfreeind/www/vendor/jasny/twig-extensions/tests/ArrayExtensionTest.php
<?php

namespace Jasny\Twig;

use Jasny\Twig\ArrayExtension;
use Jasny\Twig\TestHelper;

/**
 * @covers Jasny\Twig\ArrayExtension
 */
class ArrayExtensionTest extends \PHPUnit_Framework_TestCase
{
    use TestHelper;
    
    protected function getExtension()
    {
        return new ArrayExtension();
    }


    public function testSum()
    {
        $data = [1, 2, 3, 4];
        
        $this->assertRender('10', '{{ data|sum }}', compact('data'));
    }

    public function testProduct()
    {
        $data = [1, 2, 3, 4];
        
        $this->assertRender('24', '{{ data|product }}', compact('data'));
    }

    public function testValues()
    {
        $data = (object)['foo' => 1, 'bar' => 2, 'zoo' => 3];
        
        $this->assertRender('1-2-3', '{{ data|values|join("-") }}', compact('data'));
    }

    
    public function testAsArrayWithObject()
    {
        $data = (object)['foo' => 1, 'bar' => 2, 'zoo' => 3];
        
        $this->assertRender('foo-bar-zoo', '{{ data|as_array|keys|join("-") }}', compact('data'));
    }
    
    public function testAsArrayWithString()
    {
        $data = 'foo';
        
        $this->assertRender('foo', '{{ data|as_array|join("-") }}', compact('data'));
    }
    
    public function testHtmlAttr()
    {
        $data = ['href' => 'foo.html', 'class' => 'big small', 'checked' => true, 'disabled' => false];
        
        $this->assertRender(
            'href="foo.html" class="big small" checked="checked"',
            '{{ data|html_attr|raw }}',
            compact('data')
        );
    }
    
    
    public function filterProvider()
    {
        return [
            ['sum'],
            ['product'],
            ['values'],
            ['as_array'],
            ['html_attr']
        ];
    }
    
    /**
     * @dataProvider filterProvider
     * 
     * @param string $filter
     */
    public function testWithNull($filter)
    {
        $this->assertRender('-', '{{ null|' . $filter . '("//")|default("-") }}');
    }    
}

VaKeR 2022