Skip to content

Commit ffaacf6

Browse files
Faraz AhmedFaraz Ahmed
Faraz Ahmed
authored and
Faraz Ahmed
committed
validation fix
1 parent 38f7c19 commit ffaacf6

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

src/JsonApiDotNetCore/Services/QueryComposer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ public string Compose(IJsonApiContext jsonApiContext)
3131
private string ComposeSingleFilter(FilterQuery query)
3232
{
3333
var result = "&filter";
34-
result += QueryConstants.OPEN_BRACKET + query.Attribute + QueryConstants.CLOSE_BRACKET + "=" + query.Operation + ":" + query.Value;
34+
var operation = string.IsNullOrWhiteSpace(query.Operation) ? query.Operation : query.Operation + ":";
35+
result += QueryConstants.OPEN_BRACKET + query.Attribute + QueryConstants.CLOSE_BRACKET + "=" + operation + query.Value;
3536
return result;
3637
}
3738
}

test/UnitTests/Services/QueryComposerTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,11 @@ public void Can_ComposeLessThan_FilterStringForUrl()
4242
{
4343
// arrange
4444
var filter = new FilterQuery("attribute", "value", "le");
45+
var filter2 = new FilterQuery("attribute2", "value2", "");
4546
var querySet = new QuerySet();
4647
List<FilterQuery> filters = new List<FilterQuery>();
4748
filters.Add(filter);
49+
filters.Add(filter2);
4850
querySet.Filters = filters;
4951

5052
_jsonApiContext
@@ -55,7 +57,7 @@ public void Can_ComposeLessThan_FilterStringForUrl()
5557
// act
5658
var filterString = queryComposer.Compose(_jsonApiContext.Object);
5759
// assert
58-
Assert.Equal("&filter[attribute]=le:value", filterString);
60+
Assert.Equal("&filter[attribute]=le:value&filter[attribute2]=value2", filterString);
5961
}
6062

6163
[Fact]

0 commit comments

Comments
 (0)