public void AddFilter_works_after_parsing() { //arrange var expected = new FilterOptions("fieldz", Operator.Contains, "value"); //act var querystring = this.GetQueryNameValuePairs("field.eq=value&fieldx.lt=value"); var fps = new FilterPageSortOptionsBuilder() .Parse(querystring) .GetFilterPageSortOptions(); fps.AddFilter("fieldz", Operator.Contains, "value"); //assert fps.Filters.Last().Should().BeEquivalentTo(expected); }
//[Test] public void Test_parsing() { //arrange var expected = new FilterOptions[] { new FilterOptions("field", Operator.Equal, "value"), new FilterOptions("fieldx", Operator.LessThan, "2"), new FilterOptions("fieldz", Operator.Contains, "value") }; //act var querystring = this.GetQueryNameValuePairs("field.eq=value&fieldx.lt=2"); var fps = new FilterPageSortOptionsBuilder() .Parse(querystring) .GetFilterPageSortOptions(); fps.AddFilter("fieldz", Operator.Contains, "value"); //assert fps.Filters.Should().BeEquivalentTo(expected); }