private static string VisitQuery(QueryStringClause queryStringClause) { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(queryStringClause); return(queryStringClause.KustoQL); }
public string Visit_WithValidTermPhraseQuery_ReturnsValidReponse() { var query = new Lucene.Net.Search.PhraseQuery(); query.Add(new Lucene.Net.Index.Term("City", "TelAviv")); var phraseQuery = new LucenePhraseQuery { LuceneQuery = query, }; var luceneVisitor = new LuceneVisitor(); phraseQuery.Accept(luceneVisitor); var es = phraseQuery.ESQuery; Assert.NotNull(es); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit((QueryStringClause)es); return(((QueryStringClause)es).KustoQL); }
private static string RangeClauseToKQL(RangeClause rangeClause) { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(rangeClause); return(rangeClause.KustoQL); }
private static string DateRangeClauseToKQL(RangeClause rangeClause) { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockDateSchemaRetriever()); VisitorTestsUtils.VisitRootDsl(visitor); visitor.Visit(rangeClause); return rangeClause.KustoQL; }
public string Visit_WithValidBoolQuery_ReturnsSuccess() { var luceneNetBoolQuery = new Lucene.Net.Search.BooleanQuery(); luceneNetBoolQuery.Clauses.Add( new Lucene.Net.Search.BooleanClause( new Lucene.Net.Search.WildcardQuery( new Lucene.Net.Index.Term("*", "Lo*d?n")), Lucene.Net.Search.Occur.MUST_NOT)); var boolQuery = new LuceneBoolQuery { LuceneQuery = luceneNetBoolQuery, }; var luceneVisitor = new LuceneVisitor(); luceneVisitor.Visit(boolQuery); var es = boolQuery.ESQuery; Assert.NotNull(es); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit((BoolQuery)es); return(((BoolQuery)es).KustoQL); }
private string VisitQuery(BoolQuery query) { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(query); return(query.KustoQL); }
private string VisitSortQuery(SortClause clause) { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(clause); return(clause.KustoQL); }
public string AggregationVisit_WithSubCardinalityAggs_ReturnsDCounts() { var aggregateClause = new Aggregation() { PrimaryAggregation = new CardinalityAggregation() { FieldName = "fieldA" }, SubAggregations = new Dictionary <string, Aggregation> { { "sub", new Aggregation() { PrimaryAggregation = new CardinalityAggregation { FieldName = "fieldB" } } }, }, }; var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(aggregateClause); return(aggregateClause.KustoQL); }
public string Visit_WithValidRangeQuery_ReturnsValidResponse() { var rangeQuery = new LuceneRangeQuery { LuceneQuery = new Lucene.Net.Search.TermRangeQuery( "days", "2", "6", true, true), }; var luceneVisitor = new LuceneVisitor(); rangeQuery.Accept(luceneVisitor); var es = rangeQuery.ESQuery; Assert.NotNull(es); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit((RangeClause)es); return(((RangeClause)es).KustoQL); }
internal static ElasticSearchDSLVisitor CreateAndVisitRootVisitor(string name = "dayOfWeek", string type = "string") { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever(name, type)); VisitRootDsl(visitor); return(visitor); }
public string TestComplexWildcardQuery(string queryString) { var query = JsonConvert.DeserializeObject <Query>(queryString); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); query.Accept(visitor); return(query.KustoQL); }
private string TestRangeClause(string queryString) { var query = JsonConvert.DeserializeObject <Query>(queryString); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); query.Accept(visitor); return(query.KustoQL); }
private void CreateVisitorAndVisit(ElasticSearchDSL elasticSearchDSL, string dbName = "") { var visitor = new ElasticSearchDSLVisitor( SchemaRetrieverMock.CreateMockSchemaRetriever(), dbName); visitor.Visit(elasticSearchDSL); }
public string AggregationVisit_WithEmptyAgg_ReturnsNoPrimary() { var aggregateClause = new Aggregation(); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(aggregateClause); return(aggregateClause.KustoQL); }
public void BoolQueryVisit_WithInvalidClause_ThrowsIllegalClauseException() { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); // This is a valid scenario visitor.Visit(new BoolQuery()); Assert.That( () => visitor.Visit((BoolQuery)null), Throws.TypeOf <ArgumentNullException>()); }
public string ExistsVisit_WithValidInput_ReturnsIsNotNullResponse() { var existsClause = new ExistsClause { FieldName = "MyField", }; var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(existsClause); return(existsClause.KustoQL); }
public void DateHistogramAggVisit_WithInvalidClause_ThrowsIllegalClauseException() { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); Assert.That( () => visitor.Visit(new DateHistogramAggregation()), Throws.TypeOf <IllegalClauseException>()); Assert.That( () => visitor.Visit((DateHistogramAggregation)null), Throws.TypeOf <ArgumentNullException>()); }
public void MatchPhraseClauseVisit_WithInvalidClause_ThrowsIllegalClauseException() { var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); Assert.That( () => visitor.Visit(new MatchPhraseClause()), Throws.TypeOf <IllegalClauseException>()); Assert.That( () => visitor.Visit((MatchPhraseClause)null), Throws.TypeOf <ArgumentNullException>()); }
public string IgnoresClausesWithUnderscore() { var sortClause = new SortClause() { FieldName = "_wibble" }; var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(sortClause); return(sortClause.KustoQL); }
public string GeneratesClauseQuery() { var sortClause = new SortClause() { FieldName = "wibble", Order = "asc" }; var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(sortClause); return(sortClause.KustoQL); }
/// <summary> /// A helpler method to add the default DSL to visitor in order to /// Have the ISchemaRetriever initialised by the default visitor. /// </summary> /// <param name="visitor"></param> internal static void VisitRootDsl(ElasticSearchDSLVisitor visitor) { var dsl = new ElasticSearchDSL { Query = new Query { Bool = new BoolQuery(), }, IndexName = "someindex", }; visitor.Visit(dsl); }
public string DateHistogramVisit_WithSimpleAggregation_ReturnsValidResponse() { var histogramAggregation = new DateHistogramAggregation() { Metric = "wibble", FieldName = "wobble", }; var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(histogramAggregation); return(histogramAggregation.KustoQL); }
public string AggregationVisit_WithCardinalityAgg_ReturnsDCount() { var aggregateClause = new Aggregation() { PrimaryAggregation = new CardinalityAggregation() { FieldName = "fieldA" }, }; var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(aggregateClause); return(aggregateClause.KustoQL); }
public string Visit_WithValidWildcardQuery_ReturnsValidReponse() { var prefixQuery = new LucenePrefixQuery { LuceneQuery = new Lucene.Net.Search.PrefixQuery( new Lucene.Net.Index.Term("*", "Kfar-Sa*")), }; var luceneVisitor = new LuceneVisitor(); luceneVisitor.Visit(prefixQuery); var es = prefixQuery.ESQuery; Assert.NotNull(es); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit((QueryStringClause)es); return(((QueryStringClause)es).KustoQL); }
public string Visit_WithValidEscapedWildcardQuery_ReturnsValidResponse() { var wildcardQuery = new LuceneWildcardQuery { LuceneQuery = new Lucene.Net.Search.WildcardQuery( new Lucene.Net.Index.Term("*", "L\\o*d?n")), }; var luceneVisitor = new LuceneVisitor(); luceneVisitor.Visit(wildcardQuery); var es = wildcardQuery.ESQuery; Assert.NotNull(es); var visitor = new ElasticSearchDSLVisitor(SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit((QueryStringClause)es); return(((QueryStringClause)es).KustoQL); }
public string Visit_WithStringFieldType_GeneratesQueryWithHas() { var queryClause = CreateQueryStringClause("dayOfWeek:1", false); var dsl = new ElasticSearchDSL { Query = new Query { Bool = new BoolQuery { Must = new List <IQuery> { queryClause }, }, }, IndexName = "myindex", }; var visitor = new ElasticSearchDSLVisitor( SchemaRetrieverMock.CreateMockSchemaRetriever()); visitor.Visit(dsl); return(dsl.KustoQL); }
public string Visit_WithGreaterThanExpression_ExpectedResults() { var queryClause = CreateQueryStringClause("dayOfWeek:>2", false); var dsl = new ElasticSearchDSL { Query = new Query { Bool = new BoolQuery { Must = new List <IQuery> { queryClause }, }, }, IndexName = "myindex", }; var visitor = new ElasticSearchDSLVisitor( SchemaRetrieverMock.CreateMockNumericSchemaRetriever()); visitor.Visit(dsl); return(dsl.KustoQL); }