NameTest.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. /**
  3. * @package Zend_Pdf
  4. * @subpackage UnitTests
  5. */
  6. /**
  7. * Zend_Pdf_Element_Name
  8. */
  9. require_once 'Zend/Pdf/Element/Name.php';
  10. /**
  11. * PHPUnit Test Case
  12. */
  13. require_once 'PHPUnit/Framework/TestCase.php';
  14. /**
  15. * @package Zend_Pdf
  16. * @subpackage UnitTests
  17. */
  18. class Zend_Pdf_Element_NameTest extends PHPUnit_Framework_TestCase
  19. {
  20. public function testPDFName()
  21. {
  22. $nameObj = new Zend_Pdf_Element_Name('MyName');
  23. $this->assertTrue($nameObj instanceof Zend_Pdf_Element_Name);
  24. }
  25. public function testPDFNameBadString()
  26. {
  27. try {
  28. $nameObj = new Zend_Pdf_Element_Name("MyName\x00");
  29. } catch (Zend_Pdf_Exception $e) {
  30. $this->assertRegExp('/Null character is not allowed/i', $e->getMessage());
  31. return;
  32. }
  33. $this->fail('Expected Zend_Pdf_Exception to be thrown');
  34. }
  35. public function testGetType()
  36. {
  37. $nameObj = new Zend_Pdf_Element_Name('MyName');
  38. $this->assertEquals($nameObj->getType(), Zend_Pdf_Element::TYPE_NAME);
  39. }
  40. public function testToString()
  41. {
  42. $nameObj = new Zend_Pdf_Element_Name('MyName');
  43. $this->assertEquals($nameObj->toString(), '/MyName');
  44. }
  45. public function testEscape()
  46. {
  47. $this->assertEquals(Zend_Pdf_Element_Name::escape('My Cool Name()'), 'My#20Cool#20Name#28#29');
  48. }
  49. public function testUnescape()
  50. {
  51. $this->assertEquals(Zend_Pdf_Element_Name::unescape('My#20Cool#20Name#28#29'), 'My Cool Name()');
  52. }
  53. }