GIF89a=( ı' 7IAXKgNgYvYx\%wh&h}tıh%ıs%xı}9ıRıı&ı0%ı (ı.ıı5ıSDıı&ıa)ıx5ıı;c*!&r)ï7õ<{4ı3ıH§KoTııYıaqııqııFı !ı ' !ıNETSCAPE2.0 , =( ııpH,ı$rıl:x(tJıZı,vıızııxL.:ıızınııı|Nııııı~ııııııı& !ı0`9Rı}ıı"ı"a:Sı~xııııııııgıııEıııııııRıııEııııBıı ıı8ııDııı"ını ıHııLııDkDıBıııııDıııTıııH ıGııA Rı |ıım&ııE8ıSıkGıAıpxıaıııR2XBııE8Iııı6Xı:vT)ı~ııqıåıı"F~%xı ı 4#Zı0O|-4BsıX:= Qı SalııyXJ`G&|shııK3l7ıB|ı$'7J©*0!ııDın=ıPııııı0`ıRıljııııv>ııı5 ı.69ıødııııınlvı9ııf{ıııPbxıl5}ıpııııı3aıııIıOıııı!>ıııiıı9ıı#ıı)pıa ½ ı{ı)vmıı%D~6fııs}RıDıW Eı`!ı ı&L8xı ı{)x`X/>ı}mııRı*|`Dı=ı_ ^ı5!_&'aıOı7ıcıı`DCx`ı¥ı9ıYıFııı`?ıı"ı ın@`ı} lıı@4>ıd S ıvıxNıı"@~dıı=ıgıs~Gııııııud &p8Qı)«lXDııııA~HıySunıjııık*DıLHı] ııC"JııXb~ªwSt}6K,ııqıS:9*:ııılı@ı`ıı ı.ìıt9ıSı[©:ıı=`9Nıııı{¿ıA !Rı:ııı6ııxı0ı_ ı;ıııııı^ııı#ıııı!ııııUııı;0L1ıııııp%AııU,uıı%ıSıı!ııı~`ıGıııı ııı=4ınpı3ıııııııııuıuın|%2ıIıırı#0ııJ``8ı@S@5ıııı^`8Eı]ı.ıSııı7 ı ı0ıj SıDı zıııiıSııııı!ııılııw9*ıDıIınEXııı &AıGoıQfııFıı;ııı}ıJııııF5ııQ|ıııXııTııyııı]ı o ııC=ıı:ıııPB@ DıSı(>ıCıx}`ııxJ,ıàııp+eE0`ı}`Aı/NEıı ı9@ııı Hı7ı!%B0`ıl*ıı!8 2ı%ı ı:ı1ı0Eııux%nP1ı!ıC)ıP81lıxF#¬{ııııB0>ıı
Server IP : 217.18.85.50 / Your IP : 18.222.161.119 Web Server : LiteSpeed System : Linux server50.tr85.dhs.com.tr 3.10.0-962.3.2.lve1.5.85.el7.x86_64 #1 SMP Thu Apr 18 15:18:36 UTC 2024 x86_64 User : ferhatgenc ( ) PHP Version : 7.2.34 Disable Function : restore_ini,mail,openbasedir,f_open,system,dl,array_compare,array_user_key_compare,passthru,cat,exec,popen,proc_close,proc_get_status,proc_nice,proc_open,escapeshellcmd,escapeshellarg,show_source,posix_mkfifo,ini_restore,mysql_list_dbs,getmyuid,pconnect,link,symlink,fin,passthruexec,fileread,shell_exec,pcntl_exec,ini_alter,leak,apache_child_terminate,chown,posix_kill,posix_setpgid,posix_setsid,posix_setuid,proc_terminate,syslog,allow_url_fopen,fpassthru,execute,shell,chgrp,passthru,socket_select,socket_create,socket_create_listen,socket_create_pair,socket_listen,socket_accept,socket_bind,foreach,socket_strerror,pcntl_fork,pcntl_signal,pcntl_waitpid,pcntl_wexitstatus,pcntl_wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,openlog,apache_get_version,apache_getenv,apache_note,apache_setenv,virtualal MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/ferhatgenc/public_html/vendor/sebastian/exporter/tests/ |
Upload File : |
<?php /* * This file is part of the Exporter package. * * (c) Sebastian Bergmann <sebastian@phpunit.de> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace SebastianBergmann\Exporter; use PHPUnit\Framework\TestCase; /** * @covers SebastianBergmann\Exporter\Exporter */ class ExporterTest extends TestCase { /** * @var Exporter */ private $exporter; protected function setUp() { $this->exporter = new Exporter; } public function exportProvider() { $obj2 = new \stdClass; $obj2->foo = 'bar'; $obj3 = (object)array(1,2,"Test\r\n",4,5,6,7,8); $obj = new \stdClass; //@codingStandardsIgnoreStart $obj->null = null; //@codingStandardsIgnoreEnd $obj->boolean = true; $obj->integer = 1; $obj->double = 1.2; $obj->string = '1'; $obj->text = "this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext"; $obj->object = $obj2; $obj->objectagain = $obj2; $obj->array = array('foo' => 'bar'); $obj->self = $obj; $storage = new \SplObjectStorage; $storage->attach($obj2); $storage->foo = $obj2; return array( 'export null' => array(null, 'null'), 'export boolean true' => array(true, 'true'), 'export boolean false' => array(false, 'false'), 'export int 1' => array(1, '1'), 'export float 1.0' => array(1.0, '1.0'), 'export float 1.2' => array(1.2, '1.2'), 'export stream' => array(fopen('php://memory', 'r'), 'resource(%d) of type (stream)'), 'export numeric string' => array('1', "'1'"), 'export multidimentional array' => array(array(array(1,2,3), array(3,4,5)), <<<EOF Array &0 ( 0 => Array &1 ( 0 => 1 1 => 2 2 => 3 ) 1 => Array &2 ( 0 => 3 1 => 4 2 => 5 ) ) EOF ), // \n\r and \r is converted to \n 'export multiline text' => array("this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext", <<<EOF 'this\\n is\\n a\\n very\\n very\\n very\\n very\\n very\\n very\\r long\\n\\r text' EOF ), 'export empty stdclass' => array(new \stdClass, 'stdClass Object &%x ()'), 'export non empty stdclass' => array($obj, <<<EOF stdClass Object &%x ( 'null' => null 'boolean' => true 'integer' => 1 'double' => 1.2 'string' => '1' 'text' => 'this\\n is\\n a\\n very\\n very\\n very\\n very\\n very\\n very\\r long\\n\\r text' 'object' => stdClass Object &%x ( 'foo' => 'bar' ) 'objectagain' => stdClass Object &%x 'array' => Array &%d ( 'foo' => 'bar' ) 'self' => stdClass Object &%x ) EOF ), 'export empty array' => array(array(), 'Array &%d ()'), 'export splObjectStorage' => array($storage, <<<EOF SplObjectStorage Object &%x ( 'foo' => stdClass Object &%x ( 'foo' => 'bar' ) '%x' => Array &0 ( 'obj' => stdClass Object &%x 'inf' => null ) ) EOF ), 'export stdClass with numeric properties' => array($obj3, <<<EOF stdClass Object &%x ( 0 => 1 1 => 2 2 => 'Test\\r\\n ' 3 => 4 4 => 5 5 => 6 6 => 7 7 => 8 ) EOF ), array( chr(0) . chr(1) . chr(2) . chr(3) . chr(4) . chr(5), 'Binary String: 0x000102030405' ), array( implode('', array_map('chr', range(0x0e, 0x1f))), 'Binary String: 0x0e0f101112131415161718191a1b1c1d1e1f' ), array( chr(0x00) . chr(0x09), 'Binary String: 0x0009' ), array( '', "''" ), ); } /** * @dataProvider exportProvider */ public function testExport($value, $expected) { $this->assertStringMatchesFormat( $expected, $this->trimNewline($this->exporter->export($value)) ); } public function testExport2() { if (PHP_VERSION === '5.3.3') { $this->markTestSkipped('Skipped due to "Nesting level too deep - recursive dependency?" fatal error'); } $obj = new \stdClass; $obj->foo = 'bar'; $array = array( 0 => 0, 'null' => null, 'boolean' => true, 'integer' => 1, 'double' => 1.2, 'string' => '1', 'text' => "this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext", 'object' => $obj, 'objectagain' => $obj, 'array' => array('foo' => 'bar'), ); $array['self'] = &$array; $expected = <<<EOF Array &%d ( 0 => 0 'null' => null 'boolean' => true 'integer' => 1 'double' => 1.2 'string' => '1' 'text' => 'this\\n is\\n a\\n very\\n very\\n very\\n very\\n very\\n very\\r long\\n\\r text' 'object' => stdClass Object &%x ( 'foo' => 'bar' ) 'objectagain' => stdClass Object &%x 'array' => Array &%d ( 'foo' => 'bar' ) 'self' => Array &%d ( 0 => 0 'null' => null 'boolean' => true 'integer' => 1 'double' => 1.2 'string' => '1' 'text' => 'this\\n is\\n a\\n very\\n very\\n very\\n very\\n very\\n very\\r long\\n\\r text' 'object' => stdClass Object &%x 'objectagain' => stdClass Object &%x 'array' => Array &%d ( 'foo' => 'bar' ) 'self' => Array &%d ) ) EOF; $this->assertStringMatchesFormat( $expected, $this->trimNewline($this->exporter->export($array)) ); } public function shortenedExportProvider() { $obj = new \stdClass; $obj->foo = 'bar'; $array = array( 'foo' => 'bar', ); return array( 'shortened export null' => array(null, 'null'), 'shortened export boolean true' => array(true, 'true'), 'shortened export integer 1' => array(1, '1'), 'shortened export float 1.0' => array(1.0, '1.0'), 'shortened export float 1.2' => array(1.2, '1.2'), 'shortened export numeric string' => array('1', "'1'"), // \n\r and \r is converted to \n 'shortened export multilinestring' => array("this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext", "'this\\nis\\na\\nvery\\nvery\\nvery...\\rtext'"), 'shortened export empty stdClass' => array(new \stdClass, 'stdClass Object ()'), 'shortened export not empty stdClass' => array($obj, 'stdClass Object (...)'), 'shortened export empty array' => array(array(), 'Array ()'), 'shortened export not empty array' => array($array, 'Array (...)'), ); } /** * @dataProvider shortenedExportProvider */ public function testShortenedExport($value, $expected) { $this->assertSame( $expected, $this->trimNewline($this->exporter->shortenedExport($value)) ); } /** * @requires extension mbstring */ public function testShortenedExportForMultibyteCharacters() { $oldMbLanguage = mb_language(); mb_language('Japanese'); $oldMbInternalEncoding = mb_internal_encoding(); mb_internal_encoding('UTF-8'); try { $this->assertSame( "'ã„ã‚ã¯ã«ã»ã¸ã¨ã¡ã‚Šã¬ã‚‹ã‚’ã‚ã‹ã‚ˆãŸã‚Œãã¤ããªã‚‰ã‚€ã†ã‚ã®ãŠãã‚„...ã—ã‚‘ã²ã‚‚ã›ã™'", $this->trimNewline($this->exporter->shortenedExport('ã„ã‚ã¯ã«ã»ã¸ã¨ã¡ã‚Šã¬ã‚‹ã‚’ã‚ã‹ã‚ˆãŸã‚Œãã¤ããªã‚‰ã‚€ã†ã‚ã®ãŠãã‚„ã¾ã‘ãµã“ãˆã¦ã‚ã•ãゆã‚ã¿ã—ã‚‘ã²ã‚‚ã›ã™')) ); } catch (\Exception $e) { mb_internal_encoding($oldMbInternalEncoding); mb_language($oldMbLanguage); throw $e; } mb_internal_encoding($oldMbInternalEncoding); mb_language($oldMbLanguage); } public function provideNonBinaryMultibyteStrings() { return array( array(implode('', array_map('chr', range(0x09, 0x0d))), 9), array(implode('', array_map('chr', range(0x20, 0x7f))), 96), array(implode('', array_map('chr', range(0x80, 0xff))), 128), ); } /** * @dataProvider provideNonBinaryMultibyteStrings */ public function testNonBinaryStringExport($value, $expectedLength) { $this->assertRegExp( "~'.{{$expectedLength}}'\$~s", $this->exporter->export($value) ); } public function testNonObjectCanBeReturnedAsArray() { $this->assertEquals(array(true), $this->exporter->toArray(true)); } private function trimNewline($string) { return preg_replace('/[ ]*\n/', "\n", $string); } }