/**
  * Tests span near query for expected search result.
  */
 public function testSpanNearQueryWhenSlopIsLarge()
 {
     $repo = $this->getManager()->getRepository('AcmeTestBundle:Product');
     $spanNear = new SpanNearQuery(['in_order' => true]);
     $spanNear->setSlop(40);
     $spanNear->addQuery(new SpanTermQuery('description', 'one'))->addQuery(new SpanTermQuery('description', 'two'))->addQuery(new SpanTermQuery('description', 'six'));
     $search = $repo->createSearch()->addQuery($spanNear);
     $results = $repo->execute($search, Repository::RESULTS_ARRAY);
     $this->assertEquals(1, count($results));
 }
 /**
  * Test Span not query.
  */
 public function testSpanNotTestSimpleSpanQueries()
 {
     $repo = $this->getManager()->getRepository('AcmeTestBundle:Product');
     $spanNear = new SpanNearQuery();
     $spanNear->addQuery(new SpanTermQuery('description', 'consectetur'))->setSlop(1);
     $spanNot = new SpanNotQuery(new SpanTermQuery('description', 'foo'), $spanNear);
     $search = $repo->createSearch()->addQuery($spanNot);
     $results = $repo->execute($search, Repository::RESULTS_ARRAY);
     $this->assertEquals(1, count($results));
 }
Example #3
0
 /**
  * Test Span or query with different span queries.
  */
 public function testSpanOrQuery()
 {
     $repo = $this->getManager()->getRepository('AcmeTestBundle:Product');
     $spanNear = new SpanNearQuery(['in_order' => true]);
     $spanNear->setSlop(1);
     $spanNear->addQuery(new SpanTermQuery('description', 'ipsum'))->addQuery(new SpanTermQuery('description', 'sit'));
     $spanOr = new SpanOrQuery();
     $spanOr->addQuery(new SpanFirstQuery(new SpanTermQuery('description', 'ipsum'), 2))->addQuery($spanNear);
     $search = $repo->createSearch()->addQuery($spanOr);
     $results = $repo->execute($search, Repository::RESULTS_ARRAY);
     $this->assertEquals(2, count($results));
 }
 /**
  * Tests get Type method.
  */
 public function testSpanNearQueryGetType()
 {
     $query = new SpanNearQuery(['name']);
     $result = $query->getType();
     $this->assertEquals('span_near', $result);
 }