1
0
mirror of https://github.com/Chouchen/ShikiryuRSS.git synced 2025-09-05 13:04:32 +02:00

🔒 Add formator

Closes #3
This commit is contained in:
2023-04-17 14:28:01 +02:00
parent 6fcf240f72
commit 44c4833069
23 changed files with 571 additions and 367 deletions

View File

@@ -5,6 +5,7 @@ use Shikiryu\SRSS\Builder\SRSSBuilder;
use Shikiryu\SRSS\Entity\Item;
use Shikiryu\SRSS\SRSS;
use Shikiryu\SRSS\SRSSTools;
use Shikiryu\SRSS\Validator\Formator;
class BasicBuilderTest extends TestCase
{
@@ -42,8 +43,8 @@ class BasicBuilderTest extends TestCase
self::assertTrue($srss->isValid());
self::assertEquals($title, $srss->title);
self::assertEquals($description, $srss->description);
self::assertEquals('<![CDATA[ '.$title.' ]]>', $srss->title);
self::assertEquals('<![CDATA[ '.$description.' ]]>', $srss->description);
self::assertEquals($link, $srss->link);
$builder = new SRSSBuilder();

View File

@@ -12,10 +12,10 @@ class BasicReaderTest extends TestCase
public function testReadBasicRSS(): void
{
$rss = SRSS::read(__DIR__.'/resources/basic.xml');
self::assertEquals('test Home Page', $rss->title);
self::assertEquals('<![CDATA[ test Home Page ]]>', $rss->title);
$first_item = $rss->getFirst();
self::assertNotNull($first_item);
self::assertEquals('RSS Tutorial', $first_item->title);
self::assertEquals('<![CDATA[ RSS Tutorial ]]>', $first_item->title);
self::assertTrue($rss->isValid());
}
@@ -23,20 +23,20 @@ class BasicReaderTest extends TestCase
public function testSpecificationExampleRSS(): void
{
$rss = SRSS::read(__DIR__.'/resources/harvard.xml');
self::assertEquals('Liftoff News', $rss->title);
self::assertEquals('<![CDATA[ Liftoff News ]]>', $rss->title);
self::assertEquals('http://liftoff.msfc.nasa.gov/', $rss->link);
self::assertEquals('Liftoff to Space Exploration.', $rss->description);
self::assertEquals('<![CDATA[ Liftoff to Space Exploration. ]]>', $rss->description);
self::assertEquals('en-us', $rss->language);
self::assertEquals('Tue, 10 Jun 2003 04:00:00 GMT', $rss->pubDate);
self::assertEquals('Tue, 10 Jun 2003 09:41:01 GMT', $rss->lastBuildDate);
self::assertEquals('Tue, 10 Jun 2003 04:00:00 UTC', $rss->pubDate);
self::assertEquals('Tue, 10 Jun 2003 09:41:01 UTC', $rss->lastBuildDate);
self::assertEquals('http://blogs.law.harvard.edu/tech/rss', $rss->docs);
self::assertEquals('Weblog Editor 2.0', $rss->generator);
self::assertEquals('editor@example.com', $rss->managingEditor);
self::assertEquals('webmaster@example.com', $rss->webMaster);
self::assertCount(4, $rss->items);
self::assertEquals('Star City', $rss->getFirst()->title);
self::assertEquals('<![CDATA[ Star City ]]>', $rss->getFirst()->title);
self::assertEquals('http://liftoff.msfc.nasa.gov/news/2003/news-laundry.asp', $rss->getLast()->link);
self::assertEquals('Fri, 30 May 2003 11:06:42 GMT', $rss->getItem(2)->pubDate);
self::assertEquals('Fri, 30 May 2003 11:06:42 UTC', $rss->getItem(2)->pubDate);
self::assertTrue($rss->isValid());
}

View File

@@ -86,13 +86,13 @@ class CompleteBuilderTest extends TestCase
$item->link = $item_link;
$item->description = $item_description;
$item->author = $item_author;
$item->category[] = $item_category;
$item->category = $item_category;
$item->comments = $item_comments;
$item->enclosure = $item_enclosure;
$item->guid = $item_guid;
$item->pubDate = $item_pubdate;
$item->source = $item_source;
$item->medias[] = $item_media;
$item->medias = $item_media;
$srss->addItem($item);

View File

@@ -8,10 +8,10 @@ class MediaTest extends TestCase
public function testImages(): void
{
$rss = SRSS::read(__DIR__.'/resources/media/cnn.xml');
self::assertEquals('CNN.com - RSS Channel - Entertainment', $rss->title);
self::assertEquals('<![CDATA[ CNN.com - RSS Channel - Entertainment ]]>', $rss->title);
$first_item = $rss->getFirst();
self::assertEquals('Kirstie Alley, \'Cheers\' and \'Veronica\'s Closet\' star, dead at 71', $first_item->title);
self::assertEquals('<![CDATA[ Kirstie Alley, \'Cheers\' and \'Veronica\'s Closet\' star, dead at 71 ]]>', $first_item->title);
self::assertEquals('https://cdn.cnn.com/cnnnext/dam/assets/221205172141-kirstie-alley-2005-super-169.jpg', $first_item->medias[0]->url);
self::assertTrue($rss->isValid(), var_export($rss->channel->validated, true));
@@ -20,7 +20,7 @@ class MediaTest extends TestCase
public function testMusicVideo(): void
{
$rss = SRSS::read(__DIR__.'/resources/media/music-video.xml');
self::assertEquals('Music Videos 101', $rss->title);
self::assertEquals('<![CDATA[ Music Videos 101 ]]>', $rss->title);
self::assertCount(1, $rss->items);

View File

@@ -3,6 +3,7 @@
use PHPUnit\Framework\TestCase;
use Shikiryu\SRSS\SRSS;
use Shikiryu\SRSS\SRSSTools;
use Shikiryu\SRSS\Validator\Formator;
class OriginalReaderSRSSTest extends TestCase
{
@@ -19,7 +20,7 @@ class OriginalReaderSRSSTest extends TestCase
public function testOriginalReader(): void
{
$rss = SRSS::read($this->original);
self::assertEquals('Liftoff News', $rss->title);
self::assertEquals('<![CDATA[ Liftoff News ]]>', $rss->title);
$article1 = $rss->getItem(1);
$articleFirst = $rss->getFirst();
@@ -27,7 +28,7 @@ class OriginalReaderSRSSTest extends TestCase
$links = [];
foreach($rss as $article) {
$links[] = sprintf('<a href="%s">%s %s</a>', $article->link, SRSSTools::formatDate('d/m/y', $article->pubDate), $article->title);
$links[] = sprintf('<a href="%s">%s %s</a>', $article->link, SRSSTools::getRSSDate('d/m/y', $article->pubDate), $article->title);
}
self::assertCount(4, $links, var_export($links, true));

View File

@@ -4,6 +4,7 @@ use PHPUnit\Framework\TestCase;
use Shikiryu\SRSS\Entity\Item;
use Shikiryu\SRSS\SRSS;
use Shikiryu\SRSS\SRSSTools;
use Shikiryu\SRSS\Validator\Formator;
class OriginalWriterSRSSTest extends TestCase
{
@@ -38,8 +39,8 @@ class OriginalWriterSRSSTest extends TestCase
$rss->addItemBefore($firstItem);
self::assertCount(5, $rss->items, var_export($rss->items, true));
self::assertEquals('title 0', $rss->getFirst()->title, var_export($rss->items, true));
self::assertEquals('title 1', $rss->getItem(2)->title, var_export($rss->items, true));
self::assertEquals('<![CDATA[ title 0 ]]>', $rss->getFirst()->title, var_export($rss->items, true));
self::assertEquals('<![CDATA[ title 1 ]]>', $rss->getItem(2)->title, var_export($rss->items, true));
}
}