public void PASS_Create()
 {
     QueryFacet facet = new QueryFacet("name", new TermQuery("field", "value"));
     Assert.IsNotNull(facet);
     Assert.AreEqual("name", facet.FacetName);
     Assert.AreEqual("field", (facet.Query as TermQuery).Field);
     Assert.AreEqual("value", (facet.Query as TermQuery).Value);
 }
        public void PASS_Serialize()
        {
            QueryFacet facet = new QueryFacet("name", new TermQuery("field", "value"));
            string json = JsonConvert.SerializeObject(facet);
            Assert.IsNotNull(json);

            string expectedJson = "{\"name\":{\"query\":{\"term\":{\"field\":\"value\"}}}}";
            Assert.AreEqual(expectedJson, json);
        }
 public static CommerceQueryFacet ToCommerceQueryFacet(this QueryFacet queryFacet)
 {
     return(new CommerceQueryFacet
     {
         DisplayName = queryFacet.DisplayName,
         Name = queryFacet.Name,
         Values = queryFacet.Values,
         FoundValues = queryFacet.FoundValues
     });
 }
Beispiel #4
0
        private IEnumerable <IQueryFacet> GetFacets(Item configurationItem)
        {
            var facets = new List <IQueryFacet>();

            if (!configurationItem.FieldHasValue(Templates.SearchResults.Fields.Facets))
            {
                return(facets);
            }

            var facetItems = ((MultilistField)configurationItem.Fields[Templates.SearchResults.Fields.Facets]).GetItems();

            foreach (var item in facetItems)
            {
                var facet = new QueryFacet
                {
                    Title     = item[Constants.FacetDisplayName],
                    FieldName = item[Constants.FacetParameters].ToLowerInvariant()
                };

                facets.Add(facet);
            }
            return(facets.Distinct());
        }