Пример #1
0
 /**
  * Test for no match size.
  */
 public function testNoMatchSize()
 {
     /** @var Repository $repo */
     $repo = $this->getManager()->getRepository('AcmeTestBundle:Product');
     $termQuery = new TermQuery('description', 'description');
     $highlight = new Highlight();
     $highlight->add((new Field('title'))->setForceSource(true)->setNoMatchSize(10));
     $search = $repo->createSearch()->addQuery($termQuery)->setHighlight($highlight);
     $results = $repo->execute($search, Repository::RESULTS_RAW);
     $this->assertLessThanOrEqual(10, strlen(strip_tags($results['hits']['hits'][1]['highlight']['title'][0])));
 }
Пример #2
0
 /**
  * Tests toArray method.
  */
 public function testHighlightToArray()
 {
     $highlight = new Highlight([new Field('name')]);
     $highlight->setOrder('test');
     $highlight->setHighlighterType('postings');
     $highlight->setFragmentSize(5);
     $highlight->setNumberOfFragments(5);
     $highlight->setTagsSchema('styled');
     $highlight->setTag('tag', 'class');
     $highlight->setTag('only_tag');
     $result = ['order' => 'test', 'type' => 'postings', 'fragment_size' => 5, 'number_of_fragments' => 5, 'tags_schema' => 'styled', 'post_tags' => ['</tag>', '</only_tag>'], 'pre_tags' => ['<tag class="class">', '<only_tag>'], 'fields' => ['name' => ['matched_fields' => ['name']]]];
     $this->assertEquals($result, $highlight->toArray());
 }
Пример #3
0
 /**
  * Check if highlight is parsed as expected.
  *
  * @expectedException \UnderflowException
  * @expectedExceptionMessage Offset unknown_field undefined.
  */
 public function testHighlightParse()
 {
     /**
      * @var Repository $repository
      * @var TermQuery  $termQuery
      */
     list($repository, $termQuery) = $this->buildRepositoryAndTerm();
     $highlight = new Highlight();
     $highlight->setTag('tag')->setOrder('score')->add((new Field('title'))->setForceSource(true));
     $result = $this->executeHighlight($repository, $termQuery, $highlight, Repository::RESULTS_OBJECT)[0];
     $this->assertStringStartsWith('<tag>foo</tag>', $result->getHighLight()['title']);
     $result->getHighLight()['unknown_field'];
 }