| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 | <?php/** * This file is part of PHPOffice Common * * PHPOffice Common is free software distributed under the terms of the GNU Lesser * General Public License version 3 as published by the Free Software Foundation. * * For the full copyright and license information, please read the LICENSE * file that was distributed with this source code. For the full list of * contributors, visit https://github.com/PHPOffice/Common/contributors. * * @link        https://github.com/PHPOffice/Common * @copyright   2009-2016 PHPOffice Common contributors * @license     http://www.gnu.org/licenses/lgpl.txt LGPL version 3 */namespace PhpOffice\Common\Tests;use PhpOffice\Common\Text;/** * Test class for Text * * @coversDefaultClass PhpOffice\Common\Text */class TextTest extends \PHPUnit\Framework\TestCase{    /**     */    public function testControlCharacters()    {        $this->assertEquals('', Text::controlCharacterPHP2OOXML());        $this->assertEquals('aeiou', Text::controlCharacterPHP2OOXML('aeiou'));        $this->assertEquals('àéîöù', Text::controlCharacterPHP2OOXML('àéîöù'));        $value = rand(0, 8);        $this->assertEquals('_x'.sprintf('%04s', strtoupper(dechex($value))).'_', Text::controlCharacterPHP2OOXML(chr($value)));        $this->assertEquals('', Text::controlCharacterOOXML2PHP(''));        $this->assertEquals(chr(0x08), Text::controlCharacterOOXML2PHP('_x0008_'));    }    public function testNumberFormat()    {        $this->assertEquals('2.1', Text::numberFormat('2.06', 1));        $this->assertEquals('2.1', Text::numberFormat('2.12', 1));        $this->assertEquals('1234.0', Text::numberFormat(1234, 1));    }    public function testChr()    {        $this->assertEquals('A', Text::chr(65));        $this->assertEquals('A', Text::chr(0x41));        $this->assertEquals('é', Text::chr(233));        $this->assertEquals('é', Text::chr(0xE9));        $this->assertEquals('⼳', Text::chr(12083));        $this->assertEquals('⼳', Text::chr(0x2F33));        $this->assertEquals('🌃', Text::chr(127747));        $this->assertEquals('🌃', Text::chr(0x1F303));        $this->assertEquals('', Text::chr(2097152));    }    /**     * Is UTF8     */    public function testIsUTF8()    {        $this->assertTrue(Text::isUTF8(''));        $this->assertTrue(Text::isUTF8('éééé'));        $this->assertFalse(Text::isUTF8(utf8_decode('éééé')));    }    /**     * Test unicode conversion     */    public function testToUnicode()    {        $this->assertEquals('a', Text::toUnicode('a'));        $this->assertEquals('\uc0{\u8364}', Text::toUnicode('€'));        $this->assertEquals('\uc0{\u233}', Text::toUnicode('é'));    }    /**     * Test remove underscore prefix     */    public function testRemoveUnderscorePrefix()    {        $this->assertEquals('item', Text::removeUnderscorePrefix('_item'));    }}
 |