public void ConstructorAllowsNullSize() { var facet = new TermsFacet(ExpectedName, expectedFilter, null, expectedFields); Assert.Same(ExpectedName, facet.Name); Assert.Null(facet.Size); }
public void ConstructorSetsAllProperties() { var facet = new TermsFacet(ExpectedName, expectedFilter, expectedSize, expectedFields); Assert.Same(ExpectedName, facet.Name); Assert.Same(expectedFilter, facet.Filter); Assert.Equal(expectedSize, facet.Size); Assert.Equal(expectedFields.Length, facet.Fields.Count); }
public void BodyContainsTermsFacetWithNoSizeWhenNotSpecified() { var expectedFacet = new TermsFacet("Totals", null, "OrderTotal"); var searchRequest = new SearchRequest { Facets = new List<IFacet>(new[] { expectedFacet }) }; var formatter = new SearchRequestFormatter(defaultConnection, mapping, searchRequest); var body = JObject.Parse(formatter.Body); var result = body.TraverseWithAssert("facets", expectedFacet.Name, expectedFacet.Type); Assert.False(result.Contains("size")); }
public void BodyContainsTermsFacet() { const int expectedSize = 1234; var expectedFacet = new TermsFacet("Totals", expectedSize, "OrderTotal", "OrderCost"); var searchRequest = new SearchRequest { Facets = new List<IFacet>(new[] { expectedFacet }) }; var formatter = new SearchRequestFormatter(defaultConnection, mapping, searchRequest); var body = JObject.Parse(formatter.Body); var result = body.TraverseWithAssert("facets", expectedFacet.Name, expectedFacet.Type); Assert.Equal(expectedSize.ToString(CultureInfo.InvariantCulture), result.TraverseWithAssert("size").ToString()); var actualFields = result.TraverseWithAssert("fields").ToArray(); foreach (var expectedField in expectedFacet.Fields) Assert.Contains(expectedField, actualFields); }
static JToken Build(TermsFacet termsFacet) { return new JObject(BuildFieldProperty(termsFacet.Fields)); }
public void TypePropertyIsAlwaysTerms() { var facet = new TermsFacet(ExpectedName, 10, expectedFields); Assert.Equal("terms", facet.Type); }
public void BodyContainsTermsFacetWithDefaultSizeFromConnection() { const int expectedSize = 678; var sizedConnection = new ElasticConnection(defaultConnection.Endpoint, options:new ElasticConnectionOptions { SearchSizeDefault = expectedSize }); var expectedFacet = new TermsFacet("Totals", null, "OrderTotal", "OrderCost"); var searchRequest = new SearchRequest { Facets = new List<IFacet>(new[] { expectedFacet }) }; var formatter = new SearchRequestFormatter(sizedConnection, mapping, searchRequest); var body = JObject.Parse(formatter.Body); var result = body.TraverseWithAssert("facets", expectedFacet.Name, expectedFacet.Type); Assert.Equal(expectedSize.ToString(CultureInfo.InvariantCulture), result.TraverseWithAssert("size").ToString()); }