public void EndsWithFilter(bool isEqual) { var filter = new EndsWithFilter("Name", "ShareFile", isEqual); filter.ToString().Should().Be("endswith(Name, 'ShareFile') eq " + isEqual.ToLowerString()); }
public void EnsureImplicitAndFilter() { // Arrange var client = this.GetShareFileClient(true); var query = client.Items.GetChildren(client.Items.GetAlias("fileId")); // Act var endsWithFilter = new EndsWithFilter("Property", "value"); var startsWithFilter = new StartsWithFilter("Property", "value"); query = query.Filter(endsWithFilter).Filter(startsWithFilter); var odataQuery = query as Query<ODataFeed<Item>>; var filter = odataQuery.GetFilter(); // Assert filter.Should().BeOfType<AndFilter>(); (filter as AndFilter).Left.Should().Be(endsWithFilter); (filter as AndFilter).Right.Should().Be(startsWithFilter); }
private IFilter CreateFilter(OperatorType operators, string propertyName, string propertyValue) { IFilter filter = null; switch (operators) { case OperatorType.eq: filter = new EqualToFilter(propertyName, propertyValue); break; case OperatorType.ne: filter = new NotEqualToFilter(propertyName, propertyValue); break; case OperatorType.startswith: filter = new StartsWithFilter(propertyName, propertyValue); break; case OperatorType.endswith: filter = new EndsWithFilter(propertyName, propertyValue); break; case OperatorType.substringof: filter = new SubstringFilter(propertyName, propertyValue); break; /* currently not supported case OperatorType.lt: filter = new LessThanFilter(propertyName, propertyValue); break; case OperatorType.le: filter = new LessThanOrEqualFilter(propertyName, propertyValue); break; case OperatorType.gt: filter = new GreaterThanFilter(propertyName, propertyValue); break; case OperatorType.ge: filter = new GreaterThanOrEqualFilter(propertyName, propertyValue); break; */ } return filter; }