FeedsItemGuidFormatterTest.php in Feeds 8.3
File
tests/src/Functional/Plugin/Field/FieldFormatter/FeedsItemGuidFormatterTest.php
View source
<?php
namespace Drupal\Tests\feeds\Functional\Plugin\Field\FieldFormatter;
class FeedsItemGuidFormatterTest extends FeedsItemFormatterTestBase {
protected function setUp() {
parent::setUp();
$this->container
->get('entity_display.repository')
->getViewDisplay('node', 'article', 'default')
->setComponent('feeds_item', [
'type' => 'feeds_item_guid',
'weight' => 1,
])
->save();
}
public function testFeedsItemGuidFormatter($input, $expected) {
$feed = $this
->createCsvFeed();
$article = $this
->createNodeWithFeedsItem($feed);
$article->feeds_item->guid = $input;
$display = $this->container
->get('entity_display.repository')
->getViewDisplay($article
->getEntityTypeId(), $article
->bundle(), 'default');
$content = $display
->build($article);
$rendered_content = $this->container
->get('renderer')
->renderRoot($content);
if ($expected) {
$this
->assertStringContainsString($expected, (string) $rendered_content);
}
else {
$this
->assertFeedsItemFieldNotDisplayed($rendered_content, $input);
}
}
public function providerGuids() {
return [
'integer guid' => [
'1',
'<div>1</div>',
],
'empty guid' => [
'',
NULL,
],
'zero guid' => [
'0',
'<div>0</div>',
],
'http url guid' => [
'http://en.wikipedia.org/wiki/Civilization_(video_game)',
'<div><a href="http://en.wikipedia.org/wiki/Civilization_(video_game)">http://en.wikipedia.org/wiki/Civilization_(video_game)</a></div>',
],
'https url guid' => [
'https://en.wikipedia.org/wiki/Duke_Nukem_3D',
'<div><a href="https://en.wikipedia.org/wiki/Duke_Nukem_3D">https://en.wikipedia.org/wiki/Duke_Nukem_3D</a></div>',
],
];
}
}