CommonTest.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. require_once 'PHPUnit/Framework/TestCase.php';
  3. require_once 'Zend/Feed/Reader.php';
  4. class Zend_Feed_Reader_Entry_CommonTest extends PHPUnit_Framework_TestCase
  5. {
  6. protected $_feedSamplePath = null;
  7. public function setup()
  8. {
  9. if (Zend_Registry::isRegistered('Zend_Locale')) {
  10. $registry = Zend_Registry::getInstance();
  11. unset($registry['Zend_Locale']);
  12. }
  13. $this->_feedSamplePath = dirname(__FILE__) . '/_files/Common';
  14. }
  15. /**
  16. * Check DOM Retrieval and Information Methods
  17. */
  18. public function testGetsDomDocumentObject()
  19. {
  20. $feed = Zend_Feed_Reader::importString(
  21. file_get_contents($this->_feedSamplePath.'/atom.xml')
  22. );
  23. $entry = $feed->current();
  24. $this->assertTrue($entry->getDomDocument() instanceof DOMDocument);
  25. }
  26. public function testGetsDomXpathObject()
  27. {
  28. $feed = Zend_Feed_Reader::importString(
  29. file_get_contents($this->_feedSamplePath.'/atom.xml')
  30. );
  31. $entry = $feed->current();
  32. $this->assertTrue($entry->getXpath() instanceof DOMXPath);
  33. }
  34. public function testGetsXpathPrefixString()
  35. {
  36. $feed = Zend_Feed_Reader::importString(
  37. file_get_contents($this->_feedSamplePath.'/atom.xml')
  38. );
  39. $entry = $feed->current();
  40. $this->assertEquals('//atom:entry[1]', $entry->getXpathPrefix());
  41. }
  42. public function testGetsDomElementObject()
  43. {
  44. $feed = Zend_Feed_Reader::importString(
  45. file_get_contents($this->_feedSamplePath.'/atom.xml')
  46. );
  47. $entry = $feed->current();
  48. $this->assertTrue($entry->getElement() instanceof DOMElement);
  49. }
  50. public function testSaveXmlOutputsXmlStringForEntry()
  51. {
  52. $feed = Zend_Feed_Reader::importString(
  53. file_get_contents($this->_feedSamplePath.'/atom.xml')
  54. );
  55. $entry = $feed->current();
  56. $this->assertEquals($entry->saveXml(), file_get_contents($this->_feedSamplePath.'/atom_rewrittenbydom.xml'));
  57. }
  58. public function testGetsNamedExtension()
  59. {
  60. $feed = Zend_Feed_Reader::importString(
  61. file_get_contents($this->_feedSamplePath.'/atom.xml')
  62. );
  63. $entry = $feed->current();
  64. $this->assertTrue($entry->getExtension('Atom') instanceof Zend_Feed_Reader_Extension_Atom_Entry);
  65. }
  66. public function testReturnsNullIfExtensionDoesNotExist()
  67. {
  68. $feed = Zend_Feed_Reader::importString(
  69. file_get_contents($this->_feedSamplePath.'/atom.xml')
  70. );
  71. $entry = $feed->current();
  72. $this->assertEquals(null, $entry->getExtension('Foo'));
  73. }
  74. }