Skip to content

Commit 0332870

Browse files
Faraz AhmedFaraz Ahmed
Faraz Ahmed
authored and
Faraz Ahmed
committed
added changes for fix and fixed tests
1 parent 78cba0e commit 0332870

File tree

2 files changed

+26
-5
lines changed

2 files changed

+26
-5
lines changed

src/JsonApiDotNetCore/Services/QueryComposer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ 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+
result += QueryConstants.OPEN_BRACKET + query.Attribute + QueryConstants.CLOSE_BRACKET + "=" + query.Operation + ":" + query.Value;
3535
return result;
3636
}
3737
}

test/UnitTests/Services/QueryComposerTests.cs

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ public QueryComposerTests()
1717
}
1818

1919
[Fact]
20-
public void Can_Compose_FilterStringForUrl()
20+
public void Can_ComposeEqual_FilterStringForUrl()
2121
{
2222
// arrange
23-
var filter = new FilterQuery("attribute", "value", "=");
23+
var filter = new FilterQuery("attribute", "value", "eq");
2424
var querySet = new QuerySet();
2525
List<FilterQuery> filters = new List<FilterQuery>();
2626
filters.Add(filter);
@@ -34,7 +34,28 @@ public void Can_Compose_FilterStringForUrl()
3434
// act
3535
var filterString = queryComposer.Compose(_jsonApiContext.Object);
3636
// assert
37-
Assert.Equal("&filter[attribute]=value", filterString);
37+
Assert.Equal("&filter[attribute]=eq:value", filterString);
38+
}
39+
40+
[Fact]
41+
public void Can_ComposeLessThan_FilterStringForUrl()
42+
{
43+
// arrange
44+
var filter = new FilterQuery("attribute", "value", "le");
45+
var querySet = new QuerySet();
46+
List<FilterQuery> filters = new List<FilterQuery>();
47+
filters.Add(filter);
48+
querySet.Filters = filters;
49+
50+
_jsonApiContext
51+
.Setup(m => m.QuerySet)
52+
.Returns(querySet);
53+
54+
var queryComposer = new QueryComposer();
55+
// act
56+
var filterString = queryComposer.Compose(_jsonApiContext.Object);
57+
// assert
58+
Assert.Equal("&filter[attribute]=le:value", filterString);
3859
}
3960

4061
[Fact]
@@ -54,4 +75,4 @@ public void NoFilter_Compose_EmptyStringReturned()
5475
Assert.Equal("", filterString);
5576
}
5677
}
57-
}
78+
}

0 commit comments

Comments
 (0)