public void DateTimeTyped() { var members = TypeAccessor.Create(typeof(FilteredRangeType)).GetMembers() .ToDictionary(m => m.Name.ToLower(), m => m); var term = new RangeFilterTermParser <FilteredRangeType>("DateField", "2018-01-03..2018-06-25", members).Parse(); Assert.Equal("DateField", term.PropertyName); Assert.Equal(new DateTime(2018, 1, 3), term.From); Assert.Equal(new DateTime(2018, 6, 25), term.To); }
public void General(string field, string rangeExpression, string expectFrom, string expectTo, bool expectArgEx = false, bool expectInvalidOpEx = false) { if (expectArgEx) { Assert.ThrowsAny <ArgumentException>(() => new RangeFilterTermParser(field, rangeExpression)); } else if (expectInvalidOpEx) { Assert.ThrowsAny <InvalidOperationException>(() => new RangeFilterTermParser(field, rangeExpression).Parse()); } else { var term = new RangeFilterTermParser(field, rangeExpression).Parse(); Assert.Equal(field, term.PropertyName); Assert.Equal(expectFrom, term.From); Assert.Equal(expectTo, term.To); } }
public void GeneralTyped(string field, string rangeExpression, object expectFrom, object expectTo, bool expectArgEx = false, bool expectInvalidOpEx = false) { if (expectArgEx) { Assert.ThrowsAny <ArgumentException>(() => new RangeFilterTermParser(field, rangeExpression)); } else if (expectInvalidOpEx) { Assert.ThrowsAny <InvalidOperationException>(() => new RangeFilterTermParser(field, rangeExpression).Parse()); } else { var members = TypeAccessor.Create(typeof(FilteredRangeType)).GetMembers() .ToDictionary(m => m.Name.ToLower(), m => m); var term = new RangeFilterTermParser <FilteredRangeType>(field, rangeExpression, members).Parse(); Assert.Equal(field, term.PropertyName); Assert.Equal(expectFrom, term.From); Assert.Equal(expectTo, term.To); } }