H-OnlineComAtom10Test.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <?php
  2. require_once 'PHPUnit/Framework/TestCase.php';
  3. require_once 'Zend/Feed/Reader.php';
  4. class Zend_Feed_Reader_Integration_HOnlineComAtom10Test extends PHPUnit_Framework_TestCase
  5. {
  6. protected $_feedSamplePath = null;
  7. public function setup()
  8. {
  9. $this->_feedSamplePath = dirname(__FILE__) . '/_files/h-online.com-atom10.xml';
  10. }
  11. public function testGetsTitle()
  12. {
  13. $feed = Zend_Feed_Reader::importString(
  14. file_get_contents($this->_feedSamplePath)
  15. );
  16. $this->assertEquals('The H - news feed', $feed->getTitle());
  17. }
  18. public function testGetsAuthors()
  19. {
  20. $feed = Zend_Feed_Reader::importString(
  21. file_get_contents($this->_feedSamplePath)
  22. );
  23. $this->assertEquals(array('The H'), $feed->getAuthors());
  24. }
  25. public function testGetsSingleAuthor()
  26. {
  27. $feed = Zend_Feed_Reader::importString(
  28. file_get_contents($this->_feedSamplePath)
  29. );
  30. $this->assertEquals('The H', $feed->getAuthor());
  31. }
  32. public function testGetsCopyright()
  33. {
  34. $feed = Zend_Feed_Reader::importString(
  35. file_get_contents($this->_feedSamplePath)
  36. );
  37. $this->assertEquals(null, $feed->getCopyright());
  38. }
  39. public function testGetsDescription()
  40. {
  41. $feed = Zend_Feed_Reader::importString(
  42. file_get_contents($this->_feedSamplePath)
  43. );
  44. $this->assertEquals('Technology news', $feed->getDescription());
  45. }
  46. public function testGetsLanguage()
  47. {
  48. $feed = Zend_Feed_Reader::importString(
  49. file_get_contents($this->_feedSamplePath)
  50. );
  51. $this->assertEquals(null, $feed->getLanguage());
  52. }
  53. public function testGetsLink()
  54. {
  55. $feed = Zend_Feed_Reader::importString(
  56. file_get_contents($this->_feedSamplePath)
  57. );
  58. $this->assertEquals('http://www.h-online.com', $feed->getLink());
  59. }
  60. public function testGetsEncoding()
  61. {
  62. $feed = Zend_Feed_Reader::importString(
  63. file_get_contents($this->_feedSamplePath)
  64. );
  65. $this->assertEquals('UTF-8', $feed->getEncoding());
  66. }
  67. public function testGetsEntryCount()
  68. {
  69. $feed = Zend_Feed_Reader::importString(
  70. file_get_contents($this->_feedSamplePath)
  71. );
  72. $this->assertEquals(60, $feed->count());
  73. }
  74. /**
  75. * Entry level testing
  76. */
  77. public function testGetsEntryId()
  78. {
  79. $feed = Zend_Feed_Reader::importString(
  80. file_get_contents($this->_feedSamplePath)
  81. );
  82. $entry = $feed->current();
  83. $this->assertEquals('http://www.h-online.com/security/McAfee-update-brings-systems-down-again--/news/113689/from/rss', $entry->getId());
  84. }
  85. public function testGetsEntryTitle()
  86. {
  87. $feed = Zend_Feed_Reader::importString(
  88. file_get_contents($this->_feedSamplePath)
  89. );
  90. $entry = $feed->current();
  91. $this->assertEquals('McAfee update brings systems down again', $entry->getTitle());
  92. }
  93. public function testGetsEntryAuthors()
  94. {
  95. $feed = Zend_Feed_Reader::importString(
  96. file_get_contents($this->_feedSamplePath)
  97. );
  98. $entry = $feed->current();
  99. $this->assertEquals(array('The H'), $entry->getAuthors());
  100. }
  101. public function testGetsEntrySingleAuthor()
  102. {
  103. $feed = Zend_Feed_Reader::importString(
  104. file_get_contents($this->_feedSamplePath)
  105. );
  106. $entry = $feed->current();
  107. $this->assertEquals('The H', $entry->getAuthor());
  108. }
  109. public function testGetsEntryDescription()
  110. {
  111. $feed = Zend_Feed_Reader::importString(
  112. file_get_contents($this->_feedSamplePath)
  113. );
  114. $entry = $feed->current();
  115. /**
  116. * Note: "’" is not the same as "'" - don't replace in error
  117. */
  118. $this->assertEquals('A McAfee signature update is currently causing system failures and a lot of overtime for administrators', $entry->getDescription());
  119. }
  120. public function testGetsEntryContent()
  121. {
  122. $feed = Zend_Feed_Reader::importString(
  123. file_get_contents($this->_feedSamplePath)
  124. );
  125. $entry = $feed->current();
  126. $this->assertEquals('A McAfee signature update is currently causing system failures and a lot of overtime for administrators', $entry->getContent());
  127. }
  128. public function testGetsEntryLinks()
  129. {
  130. $feed = Zend_Feed_Reader::importString(
  131. file_get_contents($this->_feedSamplePath)
  132. );
  133. $entry = $feed->current();
  134. $this->assertEquals(array('http://www.h-online.com/security/McAfee-update-brings-systems-down-again--/news/113689/from/rss'), $entry->getLinks());
  135. }
  136. public function testGetsEntryLink()
  137. {
  138. $feed = Zend_Feed_Reader::importString(
  139. file_get_contents($this->_feedSamplePath)
  140. );
  141. $entry = $feed->current();
  142. $this->assertEquals('http://www.h-online.com/security/McAfee-update-brings-systems-down-again--/news/113689/from/rss', $entry->getLink());
  143. }
  144. public function testGetsEntryPermaLink()
  145. {
  146. $feed = Zend_Feed_Reader::importString(
  147. file_get_contents($this->_feedSamplePath)
  148. );
  149. $entry = $feed->current();
  150. $this->assertEquals('http://www.h-online.com/security/McAfee-update-brings-systems-down-again--/news/113689/from/rss',
  151. $entry->getPermaLink());
  152. }
  153. public function testGetsEntryEncoding()
  154. {
  155. $feed = Zend_Feed_Reader::importString(
  156. file_get_contents($this->_feedSamplePath)
  157. );
  158. $entry = $feed->current();
  159. $this->assertEquals('UTF-8', $entry->getEncoding());
  160. }
  161. }