acquia_cms_search-1.3.0/tests/src/Kernel/AcquiaFacetFacadeTest.php
tests/src/Kernel/AcquiaFacetFacadeTest.php
<?php namespace Drupal\Tests\acquia_cms_search\Kernel; use Drupal\acquia_cms_search\Facade\FacetFacade; use Drupal\facets\FacetInterface; use Drupal\KernelTests\KernelTestBase; /** * Tests facet creation and Search Page Block Placement. * * @group acquia_cms_search * @group low_risk * @group pr * @group push */ class AcquiaFacetFacadeTest extends KernelTestBase { /** * {@inheritdoc} */ protected static $modules = [ 'facets', 'search_api', 'acquia_cms_search', 'acquia_cms_common', ]; /** * The facets_facet entity object. * * @var \Drupal\facets\Entity\Facet */ protected $facetEntity; /** * @var \Drupal\acquia_cms_search\Facade\FacetFacade */ protected $facetFacade; /** * {@inheritdoc} * * @todo Fix config schema for fallback_view & main_listing_pages_view plugin. */ // @codingStandardsIgnoreStart protected $strictConfigSchema = FALSE; // @codingStandardsIgnoreEnd /** * {@inheritdoc} */ public function setUp(): void { parent::setUp(); $this->installEntitySchema('facets_facet'); $this->facetFacade = $this->container->get('class_resolver')->getInstanceFromDefinition(FacetFacade::class); $this->facetEntity = $this->container->get('entity_type.manager')->getStorage('facets_facet'); } /** * Tests facet facade to verify facet entity. */ public function testAcquiaFacetFacade() { $this->facetFacade->addFacet([ 'id' => 'search_category_test', 'name' => 'Category', 'url_alias' => 'category', 'field_identifier' => 'field_categories', ]); $facet = $this->facetEntity->load('search_category_test'); $this->assertInstanceOf(FacetInterface::class, $facet); $this->assertEquals("Category", $facet->getName()); } /** * Tests methods of acquia facet facade class. */ public function testAcquiaFacetFacadeMethods() { $defaultValues = $this->facetFacade->defaultValues(); $updateValues = [ 'hard_limit' => 1, 'id' => 'another_facet_id', ]; $this->assertEquals($updateValues + $defaultValues, $this->facetFacade->mergeValues($updateValues)); } }