2018-11-23 12:29:20 +00:00
< ? php
/**
* @ file
* Test the Scanner . This requires the InputStream tests are all good .
*/
2019-01-24 08:00:03 +00:00
2018-11-23 12:29:20 +00:00
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' ));
}
}