11using System ;
2+ using System . Collections . Generic ;
23using System . Linq ;
34using Elasticsearch . Net ;
45using FluentAssertions ;
6+ using FluentAssertions . Common ;
57using Nest ;
68using Tests . Framework ;
79using Tests . Framework . Integration ;
@@ -46,6 +48,7 @@ protected override void ExpectResponse(IPercolateResponse response)
4648 response . Matches . Count ( ) . Should ( ) . BeGreaterThan ( 0 ) ;
4749 var match = response . Matches . First ( ) ;
4850 match . Id . Should ( ) . Be ( PercolatorId ) ;
51+ match . Score . Should ( ) . Be ( 1 ) ;
4952 }
5053
5154 private static readonly string PercolatorId = RandomString ( ) ;
@@ -54,17 +57,28 @@ protected override void OnBeforeCall(IElasticClient client)
5457 {
5558 var register = this . Client . RegisterPercolator < Project > ( PercolatorId , r => r
5659 . Index ( this . Index )
57- . Query ( q => q . MatchAll ( ) )
60+ . Query ( q => q . MatchAll ( ) )
5861 ) ;
62+
63+ this . Client . Refresh ( this . Index ) ;
5964 }
6065
6166 protected override Func < PercolateDescriptor < Project > , IPercolateRequest < Project > > Fluent => c => c
6267 . Index ( this . Index )
63- . Document ( Project . Instance ) ;
68+ . Document ( Project . Instance )
69+ . Query ( q => q . MatchAll ( ) )
70+ . Size ( 10 )
71+ . Sort ( s => s . Descending ( SortSpecialField . Score ) )
72+ . TrackScores ( )
73+ ;
6474
6575 protected override PercolateRequest < Project > Initializer => new PercolateRequest < Project > ( Index , Type < Project > ( ) )
6676 {
67- Document = Project . Instance
77+ Document = Project . Instance ,
78+ Query = new QueryContainer ( new MatchAllQuery ( ) ) ,
79+ Size = 10 ,
80+ Sort = new List < ISort > { new SortField { Field = "_score" , Order = SortOrder . Descending } } ,
81+ TrackScores = true
6882 } ;
6983 }
7084
@@ -74,21 +88,21 @@ public class PercolateExistingDocApiTests : ApiTestBase<IPercolateResponse, IPer
7488 public PercolateExistingDocApiTests ( ReadOnlyCluster cluster , EndpointUsage usage ) : base ( cluster , usage ) { }
7589
7690 protected override LazyResponses ClientUsage ( ) => Calls (
77- fluent : ( c , f ) => c . Percolate < Project > ( p => p . Id ( _percId ) ) ,
78- fluentAsync : ( c , f ) => c . PercolateAsync < Project > ( p => p . Id ( _percId ) ) ,
91+ fluent : ( c , f ) => c . Percolate < Project > ( p => p . Id ( _percolateId ) ) ,
92+ fluentAsync : ( c , f ) => c . PercolateAsync < Project > ( p => p . Id ( _percolateId ) ) ,
7993 request : ( c , r ) => c . Percolate ( r ) ,
8094 requestAsync : ( c , r ) => c . PercolateAsync ( r )
8195 ) ;
8296
83- private string _percId = Project . Instance . Name ;
97+ private readonly string _percolateId = Project . Instance . Name ;
8498
8599 protected override HttpMethod HttpMethod => HttpMethod . POST ;
86- protected override string UrlPath => $ "project/project/{ _percId } /_percolate";
100+ protected override string UrlPath => $ "project/project/{ _percolateId } /_percolate";
87101
88102 protected override bool SupportsDeserialization => false ;
89103
90104 protected override Func < PercolateDescriptor < Project > , IPercolateRequest < Project > > Fluent => null ;
91105
92- protected override PercolateRequest < Project > Initializer => new PercolateRequest < Project > ( _percId ) ;
106+ protected override PercolateRequest < Project > Initializer => new PercolateRequest < Project > ( _percolateId ) ;
93107 }
94108}
0 commit comments