DependencyTest.php in Feeds 8.3
File
tests/src/Kernel/DependencyTest.php
View source
<?php
namespace Drupal\Tests\feeds\Kernel;
use Drupal\field\Entity\FieldConfig;
class DependencyTest extends FeedsKernelTestBase {
public function testFieldDependency() {
$this
->createFieldWithStorage('field_alpha');
$feed_type = $this
->createFeedType([
'mappings' => array_merge($this
->getDefaultMappings(), [
[
'target' => 'field_alpha',
'map' => [
'value' => 'title',
],
],
]),
]);
$dependencies = $feed_type
->getDependencies();
$expected = [
'field.field.node.article.feeds_item',
'field.field.node.article.field_alpha',
'node.type.article',
];
$this
->assertEquals($expected, $dependencies['config']);
FieldConfig::loadByName('node', 'article', 'field_alpha')
->delete();
$feed_type = $this
->reloadEntity($feed_type);
$this
->assertEquals($this
->getDefaultMappings(), $feed_type
->getMappings());
}
public function testBundleDependency() {
$feed_type = $this
->createFeedType();
$dependencies = $feed_type
->getDependencies();
$expected = [
'field.field.node.article.feeds_item',
'node.type.article',
];
$this
->assertEquals($expected, $dependencies['config']);
FieldConfig::loadByName('node', 'article', 'feeds_item')
->delete();
$this->container
->get('entity_type.manager')
->getStorage('node_type')
->load('article')
->delete();
$feed_type = $this
->reloadEntity($feed_type);
$this
->assertNull($feed_type);
}
}
Classes
Name |
Description |
DependencyTest |
Tests that feed type declares dependencies on fields used as target. |