45 lines
1.8 KiB
PHP
45 lines
1.8 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* @file
|
||
|
* Test the Scanner. This requires the InputStream tests are all good.
|
||
|
*/
|
||
|
|
||
|
namespace Masterminds\HTML5\Tests\Parser;
|
||
|
|
||
|
use Masterminds\HTML5\Parser\CharacterReference;
|
||
|
|
||
|
class CharacterReferenceTest extends \Masterminds\HTML5\Tests\TestCase
|
||
|
{
|
||
|
public function testLookupName()
|
||
|
{
|
||
|
$this->assertEquals('&', CharacterReference::lookupName('amp'));
|
||
|
$this->assertEquals('<', CharacterReference::lookupName('lt'));
|
||
|
$this->assertEquals('>', CharacterReference::lookupName('gt'));
|
||
|
$this->assertEquals('"', CharacterReference::lookupName('quot'));
|
||
|
$this->assertEquals('∌', CharacterReference::lookupName('NotReverseElement'));
|
||
|
|
||
|
$this->assertNull(CharacterReference::lookupName('StinkyCheese'));
|
||
|
}
|
||
|
|
||
|
public function testLookupHex()
|
||
|
{
|
||
|
$this->assertEquals('<', CharacterReference::lookupHex('3c'));
|
||
|
$this->assertEquals('<', CharacterReference::lookupHex('003c'));
|
||
|
$this->assertEquals('&', CharacterReference::lookupHex('26'));
|
||
|
$this->assertEquals('}', CharacterReference::lookupHex('7d'));
|
||
|
$this->assertEquals('Σ', CharacterReference::lookupHex('3A3'));
|
||
|
$this->assertEquals('Σ', CharacterReference::lookupHex('03A3'));
|
||
|
$this->assertEquals('Σ', CharacterReference::lookupHex('3a3'));
|
||
|
$this->assertEquals('Σ', CharacterReference::lookupHex('03a3'));
|
||
|
}
|
||
|
|
||
|
public function testLookupDecimal()
|
||
|
{
|
||
|
$this->assertEquals('&', CharacterReference::lookupDecimal(38));
|
||
|
$this->assertEquals('&', CharacterReference::lookupDecimal('38'));
|
||
|
$this->assertEquals('<', CharacterReference::lookupDecimal(60));
|
||
|
$this->assertEquals('Σ', CharacterReference::lookupDecimal(931));
|
||
|
$this->assertEquals('Σ', CharacterReference::lookupDecimal('0931'));
|
||
|
}
|
||
|
}
|