@@ -351,6 +351,56 @@ instance Arbitrary RegexpFlags where
351instance Arbitrary IndexAliasCreate where
351instance Arbitrary IndexAliasCreate where
352 arbitrary = IndexAliasCreate <$> arbitrary <*> reduceSize arbitrary
352 arbitrary = IndexAliasCreate <$> arbitrary <*> reduceSize arbitrary
354+instance Arbitrary Query where
355+ arbitrary = reduceSize $ oneof [ TermQuery <$> arbitrary <*> arbitrary
356+ , TermsQuery <$> arbitrary <*> arbitrary
357+ , QueryMatchQuery <$> arbitrary
358+ , QueryMultiMatchQuery <$> arbitrary
359+ , QueryBoolQuery <$> arbitrary
360+ , QueryBoostingQuery <$> arbitrary
361+ , QueryCommonTermsQuery <$> arbitrary
362+ , ConstantScoreFilter <$> arbitrary <*> arbitrary
363+ , ConstantScoreQuery <$> arbitrary <*> arbitrary
364+ , QueryDisMaxQuery <$> arbitrary
365+ , QueryFilteredQuery <$> arbitrary
366+ , QueryFuzzyLikeThisQuery <$> arbitrary
367+ , QueryFuzzyLikeFieldQuery <$> arbitrary
368+ , QueryFuzzyQuery <$> arbitrary
369+ , QueryHasChildQuery <$> arbitrary
370+ , QueryHasParentQuery <$> arbitrary
371+ , IdsQuery <$> arbitrary <*> arbitrary
372+ , QueryIndicesQuery <$> arbitrary
373+ , MatchAllQuery <$> arbitrary
374+ , QueryMoreLikeThisQuery <$> arbitrary
375+ , QueryMoreLikeThisFieldQuery <$> arbitrary
376+ , QueryNestedQuery <$> arbitrary
377+ , QueryPrefixQuery <$> arbitrary
378+ , QueryQueryStringQuery <$> arbitrary
379+ , QuerySimpleQueryStringQuery <$> arbitrary
380+ , QueryRangeQuery <$> arbitrary
381+ , QueryRegexpQuery <$> arbitrary
384+instance Arbitrary Filter where
385+ arbitrary = reduceSize $ oneof [ AndFilter <$> arbitrary <*> arbitrary
386+ , OrFilter <$> arbitrary <*> arbitrary
387+ , NotFilter <$> arbitrary <*> arbitrary
388+ , pure IdentityFilter
389+ , BoolFilter <$> arbitrary
390+ , ExistsFilter <$> arbitrary
391+ , GeoBoundingBoxFilter <$> arbitrary
392+ , GeoDistanceFilter <$> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
393+ , GeoDistanceRangeFilter <$> arbitrary <*> arbitrary
394+ , GeoPolygonFilter <$> arbitrary <*> arbitrary
395+ , IdsFilter <$> arbitrary <*> arbitrary
396+ , LimitFilter <$> arbitrary
397+ , MissingFilter <$> arbitrary <*> arbitrary <*> arbitrary
398+ , PrefixFilter <$> arbitrary <*> arbitrary <*> arbitrary
399+ , QueryFilter <$> arbitrary <*> arbitrary
400+ , RangeFilter <$> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
401+ , RegexpFilter <$> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
402+ , TermFilter <$> arbitrary <*> arbitrary]
354$(derive makeArbitrary ''IndexName)
404$(derive makeArbitrary ''IndexName)
355$(derive makeArbitrary ''MappingName)
405$(derive makeArbitrary ''MappingName)
356$(derive makeArbitrary ''DocId)
406$(derive makeArbitrary ''DocId)
@@ -394,8 +444,6 @@ $(derive makeArbitrary ''PhraseSlop)
394$(derive makeArbitrary ''MinDocFrequency)
444$(derive makeArbitrary ''MinDocFrequency)
395$(derive makeArbitrary ''MaxDocFrequency)
445$(derive makeArbitrary ''MaxDocFrequency)
396$(derive makeArbitrary ''Regexp)
446$(derive makeArbitrary ''Regexp)
397−$(derive makeArbitrary ''Filter)
398−$(derive makeArbitrary ''Query)
399$(derive makeArbitrary ''SimpleQueryStringQuery)
447$(derive makeArbitrary ''SimpleQueryStringQuery)
400$(derive makeArbitrary ''FieldOrFields)
448$(derive makeArbitrary ''FieldOrFields)
401$(derive makeArbitrary ''SimpleQueryFlag)
449$(derive makeArbitrary ''SimpleQueryFlag)