diff --git a/config/install/replication.replication_settings.article.yml b/config/install/replication.replication_settings.article.yml index 94090a3..14f5a13 100644 --- a/config/install/replication.replication_settings.article.yml +++ b/config/install/replication.replication_settings.article.yml @@ -5,4 +5,5 @@ id: article label: Replicate only article entities filter_id: entity_type parameters: - types: node.article + types: + - node.article diff --git a/config/install/replication.replication_settings.page.yml b/config/install/replication.replication_settings.page.yml index f63453d..3465383 100644 --- a/config/install/replication.replication_settings.page.yml +++ b/config/install/replication.replication_settings.page.yml @@ -5,4 +5,5 @@ id: page label: Replicate only page entities filter_id: entity_type parameters: - types: node.page + types: + - node.page diff --git a/config/install/replication.replication_settings.published.yml b/config/install/replication.replication_settings.published.yml index 11c4688..87314bd 100644 --- a/config/install/replication.replication_settings.published.yml +++ b/config/install/replication.replication_settings.published.yml @@ -4,4 +4,5 @@ dependencies: { } id: published label: Replicate published entities filter_id: published -parameters: [] +parameters: + include_unpublishable_entities: FALSE diff --git a/src/Plugin/ReplicationFilter/ReplicationFilterBase.php b/src/Plugin/ReplicationFilter/ReplicationFilterBase.php index 50c0b75..329a8cc 100644 --- a/src/Plugin/ReplicationFilter/ReplicationFilterBase.php +++ b/src/Plugin/ReplicationFilter/ReplicationFilterBase.php @@ -14,11 +14,15 @@ use Drupal\replication\Plugin\ReplicationFilterInterface; abstract class ReplicationFilterBase extends PluginBase implements ReplicationFilterInterface { /** + * The human readable label for the replication filter. + * * @var string */ protected $label; /** + * The description of what the replication filter does. + * * @var string */ protected $description; @@ -44,7 +48,7 @@ abstract class ReplicationFilterBase extends PluginBase implements ReplicationFi * passed as "query_params" to a CouchDB filter function. */ public function getConfiguration() { - if ($this->configuration == NULL) { + if (empty($this->configuration)) { return $this->defaultConfiguration(); } return $this->configuration; diff --git a/tests/src/Functional/ReplicationFilterTest.php b/tests/src/Functional/ReplicationFilterTest.php index f4a5eff..ee13dad 100644 --- a/tests/src/Functional/ReplicationFilterTest.php +++ b/tests/src/Functional/ReplicationFilterTest.php @@ -76,7 +76,7 @@ class ReplicationFilterTest extends WebTestBase { $entity2->workspace = $workspace; $entity2->save(); - $parameters = ['uuids' => $entity1->uuid()]; + $parameters = ['uuids' => [$entity1->uuid()]]; $changes = $changes_factory->get($workspace)->filter('uuid')->parameters($parameters)->getNormal(); $this->assertEqual(1, count($changes), 'Expect there is 1 entity in the changeset for UUIDs filter.'); } @@ -143,7 +143,7 @@ class ReplicationFilterTest extends WebTestBase { $entity2->workspace = $workspace; $entity2->save(); - $parameters = ['types' => 'node.article']; + $parameters = ['types' => ['node.article']]; $changes = $changes_factory->get($workspace)->filter('entity_type')->parameters($parameters)->getNormal(); $this->assertEqual(1, count($changes), 'Expect there is 1 entity in the changeset for entity type filter.'); } diff --git a/tests/src/Kernel/Plugin/ReplicationFilter/PublishedFilterTest.php b/tests/src/Kernel/Plugin/ReplicationFilter/PublishedFilterTest.php index cf1b718..53e2e11 100644 --- a/tests/src/Kernel/Plugin/ReplicationFilter/PublishedFilterTest.php +++ b/tests/src/Kernel/Plugin/ReplicationFilter/PublishedFilterTest.php @@ -90,9 +90,10 @@ class PublishedFilterTest extends KernelTestBase { /** @var \Drupal\replication\Plugin\ReplicationFilterManagerInterface $filter_manager */ $filter_manager = $this->container->get('plugin.manager.replication_filter'); $filter = $filter_manager->createInstance('published'); - $entity = BlockContent::create([ - 'type' => 'test', - ]); + $entity = $this->container + ->get('entity_type.manager') + ->getStorage('block_content') + ->create(['type' => 'test']); $value = $filter->filter($entity); diff --git a/tests/src/Unit/Plugin/ReplicationFilter/EntityTypeFilterTest.php b/tests/src/Unit/Plugin/ReplicationFilter/EntityTypeFilterTest.php index 0141c60..6b5d8c8 100644 --- a/tests/src/Unit/Plugin/ReplicationFilter/EntityTypeFilterTest.php +++ b/tests/src/Unit/Plugin/ReplicationFilter/EntityTypeFilterTest.php @@ -52,23 +52,23 @@ class EntityTypeFilterTest extends \PHPUnit_Framework_TestCase { public function filterTestProvider() { return [ // Test singular parameter values. - ['node', TRUE], - ['node.article', TRUE], - ['node.page', FALSE], + [['node'], TRUE], + [['node.article'], TRUE], + [['node.page'], FALSE], // Test multiple parameter values. - ['block,node', TRUE], - ['node.article,node.page', TRUE], - ['node.page,node.article', TRUE], - ['node.test,node.page', FALSE], + [['block', 'node'], TRUE], + [['node.article', 'node.page'], TRUE], + [['node.page', 'node.article'], TRUE], + [['node.test', 'node.page'], FALSE], // Test bad data that might be entered into the parameters: - ['', FALSE], - [',', FALSE], - [',node', TRUE], - ['..', FALSE], - [NULL, FALSE], - [FALSE, FALSE], - [TRUE, FALSE], - [0, FALSE], + [[''], FALSE], + [[','], FALSE], + [[',node'], FALSE], + [['..'], FALSE], + [[NULL], FALSE], + [[FALSE], FALSE], + [[TRUE], FALSE], + [[0], FALSE], ]; } diff --git a/tests/src/Unit/Plugin/ReplicationFilter/UuidFilterTest.php b/tests/src/Unit/Plugin/ReplicationFilter/UuidFilterTest.php index 50e59e1..0770074 100644 --- a/tests/src/Unit/Plugin/ReplicationFilter/UuidFilterTest.php +++ b/tests/src/Unit/Plugin/ReplicationFilter/UuidFilterTest.php @@ -45,16 +45,15 @@ class UuidFilterTest extends \PHPUnit_Framework_TestCase { public function filterTestProvider() { return [ // Test singular parameter values. - ['123', '123', TRUE], - ['123', '456', FALSE], + ['123', ['123'], TRUE], + ['123', ['456'], FALSE], // Test multiple parameter values. - ['123', '123,456', TRUE], - ['123', '456,789', FALSE], + ['123', ['123', '456'], TRUE], + ['123', ['456', '789'], FALSE], // Test bad data that might be entered into the parameters: - ['123', '123, 456', TRUE], - ['123', '123 , 456', TRUE], - ['123', '0', FALSE], - ['123', 'NULL', FALSE], + ['123', ['123 '], FALSE], + ['123', [0], FALSE], + ['123', [NULL], FALSE], ]; } @@ -72,9 +71,8 @@ class UuidFilterTest extends \PHPUnit_Framework_TestCase { $entity = $this->getMock(EntityInterface::class); $entity->method('uuid') ->willReturn('123'); - $parameters = []; - $value = $filter->filter($entity, $parameters); + $value = $filter->filter($entity, []); $this->assertEquals(FALSE, $value); }