%PDF- %PDF-
Direktori : /www/varak.net/wiki.varak.net/extensions/CirrusSearch/tests/unit/Query/ |
Current File : /www/varak.net/wiki.varak.net/extensions/CirrusSearch/tests/unit/Query/PreferRecentFeatureTest.php |
<?php namespace CirrusSearch\Query; use CirrusSearch\Search\SearchContext; class PreferRecentFeatureText extends \MediaWikiTestCase { public function parseProvider() { return [ 'uses defaults if nothing provided' => [ '', .6, 160, 'prefer-recent:' ], 'doesnt absorb unrelated pieces' => [ 'other', .6, 160, 'prefer-recent: other', ], 'can specify only decay portion' => [ '', .9, 160, 'prefer-recent:.9', ], 'can specify decay and half life' => [ '', .01, 123, 'prefer-recent:.01,123', ], ]; } /** * @dataProvider parseProvider */ public function testParse( $expectedRemaining, $expectedDecay, $expectedHalfLife, $term ) { $context = $this->getMockBuilder( SearchContext::class ) ->disableOriginalConstructor() ->getMock(); $context->expects( $this->once() ) ->method( 'setPreferRecentOptions' ) ->with( $expectedDecay, $expectedHalfLife ); $feature = new PreferRecentFeature( new \HashConfig( [ 'CirrusSearchPreferRecentDefaultHalfLife' => 160, 'CirrusSearchPreferRecentUnspecifiedDecayPortion' => .6, ] ) ); $remaining = $feature->apply( $context, $term ); $this->assertEquals( $expectedRemaining, $remaining ); } }