public void AllOptionsPropagatedToQueryString() { var parameters = new SearchParameters() { IncludeTotalResultCount = true, Facets = new[] { "field,option:value" }, Filter = "field eq value", HighlightFields = new[] { "field1", "field2" }, HighlightPreTag = "<b>", HighlightPostTag = "</b>", OrderBy = new[] { "field1 asc", "field2 desc" }, ScoringParameters = new[] { "name:value" }, ScoringProfile = "myprofile", SearchFields = new[] { "field1", "field2" }, SearchMode = SearchMode.All, Select = new[] { "field1", "field2" }, Skip = 10, Top = 5 }; const string ExpectedQueryString = "$count=true&facet=field%2Coption%3Avalue&$filter=field%20eq%20value&highlight=field1,field2&" + "highlightPreTag=%3Cb%3E&highlightPostTag=%3C%2Fb%3E&$orderby=field1 asc,field2 desc&" + "scoringParameter=name:value&scoringProfile=myprofile&searchFields=field1,field2&searchMode=all&" + "$select=field1,field2&$skip=10&$top=5"; Assert.Equal(ExpectedQueryString, parameters.ToString()); }
public void SomeCollectionParametersRepeat() { var parameters = new SearchParameters() { Facets = new[] { "field,option:value", "field2,option2:value2" }, ScoringParameters = new[] { "name:value", "name2:value2" } }; const string ExpectedQueryString = "$count=false&facet=field%2Coption%3Avalue&facet=field2%2Coption2%3Avalue2&" + "scoringParameter=name:value&scoringParameter=name2:value2&searchMode=any"; Assert.Equal(ExpectedQueryString, parameters.ToString()); }
public void AllOpenStringParametersAreEscaped() { const string UnescapedString = "a+%=@#b"; const string EscapedString = "a%2B%25%3D%40%23b"; var parameters = new SearchParameters() { Filter = UnescapedString, HighlightPreTag = UnescapedString, HighlightPostTag = UnescapedString, Facets = new[] { UnescapedString } }; const string ExpectedQueryStringFormat = "$count=false&facet={0}&$filter={0}&highlightPreTag={0}&highlightPostTag={0}&searchMode=any"; Assert.Equal(String.Format(ExpectedQueryStringFormat, EscapedString), parameters.ToString()); }
public void SelectStarPropagatesToQueryString() { var parameters = new SearchParameters() { Select = new[] { "*" } }; Assert.Equal("$count=false&searchMode=any&$select=*", parameters.ToString()); }