@@ -584,6 +584,28 @@ public class StemmerTests : TokenFilterAssertionBase<StemmerTests>
584584 public override string Name => "stem" ;
585585 }
586586
587+ [ SkipVersion ( "<6.5.0" , "predicate token filter not available in earlier versions" ) ]
588+ public class PredicateTests : TokenFilterAssertionBase < PredicateTests >
589+ {
590+ private readonly string _predicate = "token.getTerm().length() > 5" ;
591+
592+ public override FuncTokenFilters Fluent => ( n , tf ) => tf . Predicate ( n , t => t . Script ( _predicate ) ) ;
593+
594+ public override ITokenFilter Initializer => new PredicateTokenFilter { Script = new InlineScript ( _predicate ) } ;
595+
596+ public override object Json => new
597+ {
598+ type = "predicate_token_filter" ,
599+ script = new
600+ {
601+ source = _predicate
602+ }
603+ } ;
604+
605+ public override string Name => "predicate" ;
606+ }
607+
608+
587609 public class StemmerOverrideTests : TokenFilterAssertionBase < StemmerOverrideTests >
588610 {
589611 public override FuncTokenFilters Fluent => ( n , tf ) => tf . StemmerOverride ( n , t => t . RulesPath ( "analysis/custom_stems.txt" ) ) ;
@@ -897,7 +919,7 @@ public class NoriPartOfSpeechTests : TokenFilterAssertionBase<NoriPartOfSpeechTe
897919 }
898920
899921 [ SkipVersion ( "<6.4.0" , "Introduced in 6.4.0" ) ]
900- public class MultiplexerTests : TokenFilterAssertionBase < PhoneticTests >
922+ public class MultiplexerTests : TokenFilterAssertionBase < MultiplexerTests >
901923 {
902924 public override FuncTokenFilters Fluent => ( n , tf ) => tf
903925 . Multiplexer ( n , t => t
@@ -921,7 +943,7 @@ public class MultiplexerTests : TokenFilterAssertionBase<PhoneticTests>
921943 }
922944
923945 [ SkipVersion ( "<6.4.0" , "Introduced in 6.4.0" ) ]
924- public class RemoveDuplicatesTests : TokenFilterAssertionBase < PhoneticTests >
946+ public class RemoveDuplicatesTests : TokenFilterAssertionBase < RemoveDuplicatesTests >
925947 {
926948 public override FuncTokenFilters Fluent => ( n , tf ) => tf . RemoveDuplicates ( n ) ;
927949 public override ITokenFilter Initializer => new RemoveDuplicatesTokenFilter { } ;
0 commit comments