Exemple #1
0
 public function testFuzzyQuery()
 {
     $index = Lucene\Lucene::open(dirname(__FILE__) . '/_index23Sample/_files');
     $defaultPrefixLength = Query\Fuzzy::getDefaultPrefixLength();
     Query\Fuzzy::setDefaultPrefixLength(0);
     $hits = $index->find('tesd~0.4');
     $this->assertEquals(count($hits), 9);
     $expectedResultset = array(array(2, 0.037139, 'IndexSource/contributing.patches.html'), array(0, 0.008735, 'IndexSource/contributing.documentation.html'), array(7, 0.002449, 'IndexSource/contributing.bugs.html'), array(1, 0.000483, 'IndexSource/contributing.wishlist.html'), array(3, 0.000483, 'IndexSource/about-pear.html'), array(9, 0.000483, 'IndexSource/core.html'), array(5, 0.000414, 'IndexSource/authors.html'), array(8, 0.000414, 'IndexSource/contributing.html'), array(4, 0.000345, 'IndexSource/copyright.html'));
     foreach ($hits as $resId => $hit) {
         $this->assertEquals($hit->id, $expectedResultset[$resId][0]);
         $this->assertTrue(abs($hit->score - $expectedResultset[$resId][1]) < 1.0E-6);
         $this->assertEquals($hit->path, $expectedResultset[$resId][2]);
     }
     Query\Fuzzy::setDefaultPrefixLength($defaultPrefixLength);
 }
 public function tearDown()
 {
     Query\Wildcard::setMinPrefixLength($this->_wildcardMinPrefix);
     Query\Fuzzy::setDefaultPrefixLength($this->_defaultPrefixLength);
 }