public void FacetQueryParameter002() { // Arrange var expected = JObject.Parse(@" { ""facet"": { ""X"": { ""query"": { ""q"": ""avg('Y')"", ""mincount"": 1, ""sort"": { ""count"": ""desc"" } } } } }"); string actual; var jObject = new JObject(); var expressionCache = new ExpressionCache <TestDocument>(); var expressionBuilder = new ExpressionBuilder <TestDocument>(expressionCache); var parameter = new FacetQueryParameter <TestDocument>(expressionBuilder); parameter.Configure("X", new Any <TestDocument>("avg('Y')"), FacetSortType.CountDesc); // Act parameter.Execute(jObject); actual = jObject.ToString(); // Assert Assert.Equal(expected.ToString(), actual); }
public void FacetQueryParameter005() { // Arrange var expected = JObject.Parse(@" { ""facet"": { ""X"": { ""query"": { ""q"": ""{!ex=tag1,tag2}avg('Y')"", ""mincount"": 1 } } } }"); string actual; var jObject = new JObject(); var expressionCache = new ExpressionCache <TestDocument>(); var expressionBuilder = new ExpressionBuilder <TestDocument>(expressionCache); var parameter = new FacetQueryParameter <TestDocument>(expressionBuilder); parameter.Configure("X", new Any <TestDocument>("avg('Y')"), excludes: new[] { "tag1", "tag2" }); // Act parameter.Execute(jObject); actual = jObject.ToString(); // Assert Assert.Equal(expected.ToString(), actual); }
public void FacetQueryParameter004() { // Arrange var container = new List <string>(); var expressionCache = new ExpressionCache <TestDocument>(); var expressionBuilder = new ExpressionBuilder <TestDocument>(expressionCache); var parameter = new FacetQueryParameter <TestDocument>(expressionBuilder); parameter.Configure("X", new QueryAll <TestDocument>(), FacetSortType.IndexDesc); // Act / Assert Assert.Throws <UnsupportedSortTypeException>(() => parameter.Execute(container)); }
public void FacetQueryParameter001() { // Arrange var container = new List <string>(); var expressionCache = new ExpressionCache <TestDocument>(); var expressionBuilder = new ExpressionBuilder <TestDocument>(expressionCache); var parameter = new FacetQueryParameter <TestDocument>(expressionBuilder); parameter.Configure("X", new Any <TestDocument>("avg('Y')")); // Act parameter.Execute(container); // Assert Assert.Equal(3, container.Count); Assert.Equal("facet=true", container[0]); Assert.Equal("facet.query={!key=X}avg('Y')", container[1]); Assert.Equal("f.X.facet.mincount=1", container[2]); }