public void In(string expression, string expectField, FilterOperators?expectOperator, string[] expectedValues) { var term = new FilterTermParser(expression).Parse() as InFilterTerm; Assert.NotNull(term); Assert.Equal(expectField, term.PropertyName); Assert.Equal(expectOperator, term.Operator); Assert.Equal(expectedValues, term.Value); }
public void Range(string expression, string expectField, FilterOperators?expectOperator, string expectFrom, string expectTo) { var term = new FilterTermParser(expression).Parse() as RangeFilterTerm; Assert.NotNull(term); Assert.Equal(expectField, term.PropertyName); Assert.Equal(expectOperator, term.Operator); Assert.Equal(expectFrom, term.From); Assert.Equal(expectTo, term.To); }
public void InTyped(string expression, string expectField, FilterOperators?expectOperator, object[] expectedValues) { var members = TypeAccessor.Create(typeof(FilteredType)).GetMembers() .ToDictionary(m => m.Name.ToLower(), m => m); var term = new FilterTermParser <FilteredType>(expression, members).Parse() as InFilterTerm; Assert.NotNull(term); Assert.Equal(expectField, term.PropertyName); Assert.Equal(expectOperator, term.Operator); Assert.Equal(expectedValues, term.Value); }
public void Basic(string expression, string expectField, FilterOperators?expectedOperator, string expectedValue, bool expectArgEx = false, bool expectInvalidOpEx = false) { if (expectArgEx) { Assert.ThrowsAny <ArgumentException>(() => new FilterTermParser(expression)); } else if (expectInvalidOpEx) { Assert.ThrowsAny <InvalidOperationException>(() => new FilterTermParser(expression).Parse()); } else { var term = new FilterTermParser(expression).Parse(); Assert.Equal(expectField, term.PropertyName); Assert.Equal(expectedOperator, term.Operator); Assert.Equal(expectedValue, term.Value); } }
public void BasicTyped(string expression, string expectField, FilterOperators?expectedOperator, object expectedValue, bool expectArgEx = false, bool expectInvalidOpEx = false) { var members = TypeAccessor.Create(typeof(FilteredType)).GetMembers() .ToDictionary(m => m.Name.ToLower(), m => m); if (expectArgEx) { Assert.ThrowsAny <ArgumentException>(() => new FilterTermParser <FilteredType>(expression, members)); } else if (expectInvalidOpEx) { Assert.ThrowsAny <InvalidOperationException>(() => new FilterTermParser <FilteredType>(expression, members).Parse()); } else { var term = new FilterTermParser <FilteredType>(expression, members).Parse(); Assert.Equal(expectField, term.PropertyName); Assert.Equal(expectedOperator, term.Operator); Assert.Equal(expectedValue, term.Value); } }