/**
  * Tests widget without filters.
  */
 public function testNoFilterResults()
 {
     $facet = new Facet([], 'facet');
     $facet->setResults($this->originalResults);
     $facet->setWidgetConfigs(['show_numbers' => 1]);
     $output = $this->widget->build($facet);
     $this->assertInternalType('array', $output);
     $this->assertCount(4, $output['#items']);
     $this->assertEquals(['js-facets-checkbox-links'], $output['#attributes']['class']);
     $expected_links = [$this->buildLinkAssertion('Llama', 10), $this->buildLinkAssertion('Badger', 20), $this->buildLinkAssertion('Duck', 15), $this->buildLinkAssertion('Alpaca', 9)];
     foreach ($expected_links as $index => $value) {
         $this->assertInternalType('array', $output['#items'][$index]);
         $this->assertEquals($value, $output['#items'][$index]['#title']);
         $this->assertInstanceOf(FormattableMarkup::class, $output['#items'][$index]['#title']);
         $this->assertEquals('link', $output['#items'][$index]['#type']);
         $this->assertEquals(['facet-item'], $output['#items'][$index]['#wrapper_attributes']['class']);
     }
 }
Example #2
0
 /**
  * Tests for links widget with children.
  */
 public function testChildren()
 {
     $original_results = $this->originalResults;
     $child = new Result('snake', 'Snake', 5);
     $original_results[1]->setActiveState(TRUE);
     $original_results[1]->setChildren($child);
     $facet = new Facet([], 'facet');
     $facet->setResults($original_results);
     $facet->setWidgetConfigs(['show_numbers' => 1]);
     $output = $this->widget->build($facet);
     $this->assertInternalType('array', $output);
     $this->assertCount(4, $output['#items']);
     $expected_links = [$this->buildLinkAssertion('Llama', 10), $this->buildLinkAssertion('Badger', 20, TRUE), $this->buildLinkAssertion('Duck', 15), $this->buildLinkAssertion('Alpaca', 9)];
     foreach ($expected_links as $index => $value) {
         $this->assertInternalType('array', $output['#items'][$index]);
         $this->assertEquals($value, $output['#items'][$index]['#title']);
         $this->assertEquals('link', $output['#items'][$index]['#type']);
         if ($index === 1) {
             $this->assertEquals('active-trail', $output['#items'][$index]['#attributes']['class']);
             $this->assertEquals(['facet-item', 'expanded'], $output['#items'][$index]['#wrapper_attributes']['class']);
         } else {
             $this->assertEquals(['facet-item'], $output['#items'][$index]['#wrapper_attributes']['class']);
         }
     }
 }