@@ -119,6 +119,40 @@ let ``ObjectListFilter works with OR operator``() =
119119 result.Contact
|> equals
{ Email
= " [email protected] " } 120120 result.Friends
|> equals
[ { Email
= " [email protected] " }; { Email
= " [email protected] " } ] 121121
122+ [<Fact>]
123+ let ``ObjectListFilter works with IN operator for string type field`` () =
124+ let filter =
125+ In { FieldName = " firstName" ; Value = [ " Jeneffer" ; " Ben" ] }
126+ let queryable = data.AsQueryable()
127+ let filteredData = queryable.Apply( filter) |> Seq.toList
128+ List.length filteredData |> equals 2
129+ let result = List.head filteredData
130+ result.ID |> equals 4
131+ result.FirstName |> equals " Ben"
132+ result.LastName |> equals " Adams"
133+ result.Contact
|> equals
{ Email
= " [email protected] " } 134+ result.Friends
|> equals
[ { Email
= " [email protected] " }; { Email
= " [email protected] " } ] 135+ let result2 = List.last filteredData
136+ result2.ID |> equals 7
137+ result2.FirstName |> equals " Jeneffer"
138+ result2.LastName |> equals " Trif"
139+ result2.Contact
|> equals
{ Email
= " [email protected] " } 140+ result2.Friends
|> equals
[ { Email
= " [email protected] " } ] 141+
142+ [<Fact>]
143+ let ``ObjectListFilter works with IN operator for int type field`` () =
144+ let filter =
145+ In { FieldName = " id" ; Value = [ 4 ; 2 ; 7 ] }
146+ let queryable = data.AsQueryable()
147+ let filteredData = queryable.Apply( filter) |> Seq.toList
148+ List.length filteredData |> equals 3
149+ let result = List.head filteredData
150+ result.ID |> equals 4
151+ result.FirstName |> equals " Ben"
152+ result.LastName |> equals " Adams"
153+ result.Contact
|> equals
{ Email
= " [email protected] " } 154+ result.Friends
|> equals
[ { Email
= " [email protected] " }; { Email
= " [email protected] " } ] 155+
122156[<Fact>]
123157let ``ObjectListFilter works with FilterField operator`` () =
124158 let filter =
0 commit comments