PHPWord/vendor/phenx/php-font-lib/tests/FontLib/FontTest.php

50 lines
1.5 KiB
PHP
Raw Normal View History

2021-02-26 19:53:56 +00:00
<?php
namespace FontLib\Tests;
use FontLib\Font;
use PHPUnit\Framework\TestCase;
class FontTest extends TestCase
{
/**
* @expectedException \Fontlib\Exception\FontNotFoundException
*/
public function testLoadFileNotFound()
{
Font::load('non-existing/font.ttf');
}
public function testLoadTTFFontSuccessfully()
{
$trueTypeFont = Font::load('sample-fonts/IntelClear-Light.ttf');
$this->assertInstanceOf('FontLib\TrueType\File', $trueTypeFont);
}
public function test12CmapFormat()
{
$trueTypeFont = Font::load('sample-fonts/NotoSansShavian-Regular.ttf');
$trueTypeFont->parse();
$cmapTable = $trueTypeFont->getData("cmap", "subtables");
$cmapFormat4Table = $cmapTable[0];
$this->assertEquals(4, $cmapFormat4Table['format']);
$this->assertEquals(6, $cmapFormat4Table['segCount']);
$this->assertEquals($cmapFormat4Table['segCount'], count($cmapFormat4Table['startCode']));
$this->assertEquals($cmapFormat4Table['segCount'], count($cmapFormat4Table['endCode']));
$cmapFormat12Table = $cmapTable[1];
$this->assertEquals(12, $cmapFormat12Table['format']);
$this->assertEquals(6, $cmapFormat12Table['ngroups']);
$this->assertEquals(6, count($cmapFormat12Table['startCode']));
$this->assertEquals(6, count($cmapFormat12Table['endCode']));
$this->assertEquals(53, count($cmapFormat12Table['glyphIndexArray']));
}
}