Esempio n. 1
0
 /**
  * Test query parsing.
  *
  * @return void
  */
 public function testParsing()
 {
     // Set up an array of expected inputs (serialized objects) and outputs
     // (queries):
     // @codingStandardsIgnoreStart
     $tests = [['basic', 'Author:(john smith)'], ['advanced', '(Title:(bananas)) AND (SubjectTerms:(oranges) OR apples) NOT ((PublicationSeriesTitle:(pears)))']];
     // @codingStandardsIgnoreEnd
     $qb = new QueryBuilder();
     foreach ($tests as $test) {
         list($input, $output) = $test;
         $q = unserialize(file_get_contents(PHPUNIT_SEARCH_FIXTURES . '/summon/query/' . $input));
         $response = $qb->build($q);
         $processedQ = $response->get('query');
         $this->assertEquals($output, $processedQ[0]);
     }
 }
 /**
  * Create the Summon query builder.
  *
  * @return QueryBuilder
  */
 protected function createQueryBuilder()
 {
     $builder = new QueryBuilder();
     $caseSensitiveBooleans = isset($this->summonConfig->General->case_sensitive_bools) ? $this->summonConfig->General->case_sensitive_bools : true;
     $helper = new LuceneSyntaxHelper($caseSensitiveBooleans);
     $builder->setLuceneHelper($helper);
     return $builder;
 }