@@ -33,6 +33,27 @@ class RssTest extends \PHPUnit_Framework_TestCase
3333 ],
3434 ];
3535
36+ /**
37+ * @var string
38+ */
39+ protected $ feedXml = '<?xml version="1.0" encoding="UTF-8"?>
40+ <rss xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
41+ <channel>
42+ <title><![CDATA[Feed Title]]></title>
43+ <link>http://magento.com/rss/link</link>
44+ <description><![CDATA[Feed Description]]></description>
45+ <pubDate>Sat, 22 Apr 2017 13:21:12 +0200</pubDate>
46+ <generator>Zend_Feed</generator>
47+ <docs>http://blogs.law.harvard.edu/tech/rss</docs>
48+ <item>
49+ <title><![CDATA[Feed 1 Title]]></title>
50+ <link>http://magento.com/rss/link/id/1</link>
51+ <description><![CDATA[Feed 1 Description]]></description>
52+ <pubDate>Sat, 22 Apr 2017 13:21:12 +0200</pubDate>
53+ </item>
54+ </channel>
55+ </rss> ' ;
56+
3657 /**
3758 * @var ObjectManagerHelper
3859 */
@@ -43,6 +64,16 @@ class RssTest extends \PHPUnit_Framework_TestCase
4364 */
4465 private $ cacheMock ;
4566
67+ /**
68+ * @var \Magento\Framework\App\FeedImporterInterface|\PHPUnit_Framework_MockObject_MockObject
69+ */
70+ private $ feedImporterMock ;
71+
72+ /**
73+ * @var \Magento\Framework\App\FeedInterface|\PHPUnit_Framework_MockObject_MockObject
74+ */
75+ private $ feedMock ;
76+
4677 /**
4778 * @var SerializerInterface|\PHPUnit_Framework_MockObject_MockObject
4879 */
@@ -52,11 +83,15 @@ protected function setUp()
5283 {
5384 $ this ->cacheMock = $ this ->getMock (\Magento \Framework \App \CacheInterface::class);
5485 $ this ->serializerMock = $ this ->getMock (SerializerInterface::class);
86+ $ this ->feedImporterMock = $ this ->getMock (\Magento \Framework \App \FeedImporterInterface::class);
87+ $ this ->feedMock = $ this ->getMock (\Magento \Framework \App \FeedInterface::class);
88+
5589 $ this ->objectManagerHelper = new ObjectManagerHelper ($ this );
5690 $ this ->rss = $ this ->objectManagerHelper ->getObject (
5791 \Magento \Rss \Model \Rss::class,
5892 [
5993 'cache ' => $ this ->cacheMock ,
94+ 'feedImporter ' => $ this ->feedImporterMock ,
6095 'serializer ' => $ this ->serializerMock
6196 ]
6297 );
@@ -116,6 +151,15 @@ public function testCreateRssXml()
116151 $ dataProvider ->expects ($ this ->any ())->method ('getCacheLifetime ' )->will ($ this ->returnValue (100 ));
117152 $ dataProvider ->expects ($ this ->any ())->method ('getRssData ' )->will ($ this ->returnValue ($ this ->feedData ));
118153
154+ $ this ->feedMock ->expects ($ this ->once ())
155+ ->method ('asXml ' )
156+ ->will ($ this ->returnValue ($ this ->feedXml ));
157+
158+ $ this ->feedImporterMock ->expects ($ this ->once ())
159+ ->method ('importArray ' )
160+ ->with ($ this ->feedData )
161+ ->will ($ this ->returnValue ($ this ->feedMock ));
162+
119163 $ this ->rss ->setDataProvider ($ dataProvider );
120164 $ result = $ this ->rss ->createRssXml ();
121165 $ this ->assertContains ('<?xml version="1.0" encoding="UTF-8"?> ' , $ result );
0 commit comments