Skip to content

Commit b13318b

Browse files
author
Viktor Tochonov
committed
PR fixes
1 parent 9754837 commit b13318b

File tree

2 files changed

+32
-33
lines changed

2 files changed

+32
-33
lines changed

src/FSharp.Data.GraphQL.Server.Middleware/ObjectListFilter.fs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -142,20 +142,17 @@ module ObjectListFilter =
142142
let private StringEndsWithMethod = typeof<string>.GetMethod ("EndsWith", [| typeof<string> |])
143143
let private StringContainsMethod = typeof<string>.GetMethod ("Contains", [| typeof<string> |])
144144
let private MemberStartsWithMethod (memberType : Type) =
145-
let method = memberType.GetMethod ("StartsWith", [| memberType |])
146-
match method with
145+
match memberType.GetMethod ("StartsWith", [| memberType |]) with
147146
| null -> raise (MissingMemberException "Method 'StartsWith' not found on member type")
148-
| _ -> method
147+
| method -> method
149148
let private MemberEndsWithMethod (memberType : Type) =
150-
let method = memberType.GetMethod ("EndsWith", [| memberType |])
151-
match method with
149+
match memberType.GetMethod ("EndsWith", [| memberType |]) with
152150
| null -> raise (MissingMemberException "Method 'EndsWith' not found on member type")
153-
| _ -> method
151+
| method -> method
154152
let private MemberContainsMethod (memberType : Type) =
155-
let method = memberType.GetMethod ("Contains", [| memberType |])
156-
match method with
153+
match memberType.GetMethod ("Contains", [| memberType |]) with
157154
| null -> raise (MissingMemberException "Method 'Contains' not found on member type")
158-
| _ -> method
155+
| method -> method
159156
let private getEnumerableContainsMethod (memberType : Type) =
160157
match
161158
typeof<Enumerable>

tests/FSharp.Data.GraphQL.Tests/ObjectListFilterLinqGenerateTests.fs

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,16 @@ type ValidStringStruct =
2121
static member internal op_GreaterThanOrEqual (ValidStringStruct left, right) = left >= right
2222
static member internal op_LessThan (ValidStringStruct left, right) = left < right
2323
static member internal op_LessThanOrEqual (ValidStringStruct left, right) = left <= right
24-
// Just for demo purposes
25-
interface IEqualityOperators<ValidStringStruct, string, bool> with
26-
static member op_Equality (ValidStringStruct left, right) = left = right
27-
static member op_Inequality (ValidStringStruct left, right) = left <> right
28-
interface IComparisonOperators<ValidStringStruct, string, bool> with
29-
static member op_GreaterThan (ValidStringStruct left, right) = left > right
30-
static member op_GreaterThanOrEqual (ValidStringStruct left, right) = left >= right
31-
static member op_LessThan (ValidStringStruct left, right) = left < right
32-
static member op_LessThanOrEqual (ValidStringStruct left, right) = left <= right
24+
25+
// Just for demo purposes
26+
interface IEqualityOperators<ValidStringStruct, ValidStringStruct, bool> with
27+
static member op_Equality (ValidStringStruct left, ValidStringStruct right) = left = right
28+
static member op_Inequality (ValidStringStruct left, ValidStringStruct right) = left <> right
29+
interface IComparisonOperators<ValidStringStruct, ValidStringStruct, bool> with
30+
static member op_GreaterThan (ValidStringStruct left, ValidStringStruct right) = left > right
31+
static member op_GreaterThanOrEqual (ValidStringStruct left, ValidStringStruct right) = left >= right
32+
static member op_LessThan (ValidStringStruct left, ValidStringStruct right) = left < right
33+
static member op_LessThanOrEqual (ValidStringStruct left, ValidStringStruct right) = left <= right
3334

3435
type ValidStringObject =
3536
internal
@@ -42,15 +43,16 @@ type ValidStringObject =
4243
static member internal op_GreaterThanOrEqual (ValidStringObject left, right) = left >= right
4344
static member internal op_LessThan (ValidStringObject left, right) = left < right
4445
static member internal op_LessThanOrEqual (ValidStringObject left, right) = left <= right
45-
// Just for demo purposes
46-
interface IEqualityOperators<ValidStringObject, string, bool> with
47-
static member op_Equality (ValidStringObject left, right) = left = right
48-
static member op_Inequality (ValidStringObject left, right) = left <> right
49-
interface IComparisonOperators<ValidStringObject, string, bool> with
50-
static member op_GreaterThan (ValidStringObject left, right) = left > right
51-
static member op_GreaterThanOrEqual (ValidStringObject left, right) = left >= right
52-
static member op_LessThan (ValidStringObject left, right) = left < right
53-
static member op_LessThanOrEqual (ValidStringObject left, right) = left <= right
46+
47+
// Just for demo purposes
48+
interface IEqualityOperators<ValidStringObject, ValidStringObject, bool> with
49+
static member op_Equality (ValidStringObject left, ValidStringObject right) = left = right
50+
static member op_Inequality (ValidStringObject left, ValidStringObject right) = left <> right
51+
interface IComparisonOperators<ValidStringObject, ValidStringObject, bool> with
52+
static member op_GreaterThan (ValidStringObject left, ValidStringObject right) = left > right
53+
static member op_GreaterThanOrEqual (ValidStringObject left, ValidStringObject right) = left >= right
54+
static member op_LessThan (ValidStringObject left, ValidStringObject right) = left < right
55+
static member op_LessThanOrEqual (ValidStringObject left, ValidStringObject right) = left <= right
5456

5557
[<Struct>]
5658
type ValidIntStruct =
@@ -67,7 +69,7 @@ type ValidIntObject =
6769
static member internal op_Inequality (ValidIntObject left, ValidIntObject right) = left <> right
6870
static member internal op_GreaterThan (ValidIntObject left, right : Int64) = left > right
6971

70-
type Butafor = {
72+
type FakeEntity = {
7173
ValidStringStruct : ValidStringStruct
7274
ValidStringObject : ValidStringObject
7375
string : string
@@ -82,11 +84,11 @@ let cosmosClient =
8284
new CosmosClient ("https://localhost:8081/", "C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==", options)
8385
let container = cosmosClient.GetContainer("database", "container")
8486
let filterOptions =
85-
ObjectListFilterLinqOptions<Butafor, obj>.None
87+
ObjectListFilterLinqOptions<FakeEntity, obj>.None
8688

8789
[<Fact>]
8890
let ``ObjectListFilter works with Equals operator for ValidStringStruct`` () =
89-
let queryable = container.GetItemLinqQueryable<Butafor> ()
91+
let queryable = container.GetItemLinqQueryable<FakeEntity> ()
9092
let filter = Equals { FieldName = "validStringStruct"; Value = "Jonathan"}
9193
let filterQuery = queryable.Apply (filter, filterOptions)
9294
let queryDefinition = CosmosLinqExtensions.ToQueryDefinition filterQuery
@@ -95,14 +97,14 @@ let ``ObjectListFilter works with Equals operator for ValidStringStruct`` () =
9597
[<Fact>]
9698
let ``ObjectListFilter works with Equals operator for ValidStringObject`` () =
9799
let filter = Equals { FieldName = "validStringObject"; Value = ValidStringObject "Jonathan" }
98-
let queryable = container.GetItemLinqQueryable<Butafor> ()
100+
let queryable = container.GetItemLinqQueryable<FakeEntity> ()
99101
let filterQuery = queryable.Apply (filter)
100102
let queryDefinition = CosmosLinqExtensions.ToQueryDefinition filterQuery
101103
()
102104

103105
[<Fact>]
104106
let ``ObjectListFilter works with GreaterThan operator for ValidIntStruct`` () =
105-
let queryable = container.GetItemLinqQueryable<Butafor> ()
107+
let queryable = container.GetItemLinqQueryable<FakeEntity> ()
106108
let filter = GreaterThan { FieldName = "validIntStruct"; Value = 6L }
107109
let filterQuery = queryable.Apply (filter, filterOptions)
108110
let queryDefinition = CosmosLinqExtensions.ToQueryDefinition filterQuery
@@ -111,7 +113,7 @@ let ``ObjectListFilter works with GreaterThan operator for ValidIntStruct`` () =
111113
[<Fact>]
112114
let ``ObjectListFilter works with GreaterThan operator for ValidIntObject`` () =
113115
let filter = GreaterThan { FieldName = "validIntObject"; Value = 6L }
114-
let queryable = container.GetItemLinqQueryable<Butafor> ()
116+
let queryable = container.GetItemLinqQueryable<FakeEntity> ()
115117
let filterQuery = queryable.Apply (filter)
116118
let queryDefinition = CosmosLinqExtensions.ToQueryDefinition filterQuery
117119
()

0 commit comments

Comments
 (0)