@@ -48,6 +48,60 @@ public void Can_Build_Filters()
4848            Assert . Equal ( "value" ,  querySet . Filters . Single ( f =>  f . Key  ==  "Key" ) . Value ) ; 
4949        } 
5050
51+         [ Fact ] 
52+         public  void  Filters_Properly_Parses_DateTime_With_Operation ( ) 
53+         { 
54+             // arrange 
55+             const  string  dt  =  "2017-08-15T22:43:47.0156350-05:00" ; 
56+             var  query  =  new  Dictionary < string ,  StringValues >  { 
57+                 {  "filter[key]" ,  new  StringValues ( "le:"  +  dt )  } 
58+             } ; 
59+ 
60+             _queryCollectionMock 
61+                 . Setup ( m =>  m . GetEnumerator ( ) ) 
62+                 . Returns ( query . GetEnumerator ( ) ) ; 
63+ 
64+             _jsonApiContextMock 
65+                 . Setup ( m =>  m . GetControllerAttribute < DisableQueryAttribute > ( ) ) 
66+                 . Returns ( new  DisableQueryAttribute ( QueryParams . None ) ) ; 
67+ 
68+             // act -- ctor calls BuildQuerySet() 
69+             var  querySet  =  new  QuerySet ( 
70+                 _jsonApiContextMock . Object , 
71+                 _queryCollectionMock . Object ) ; 
72+ 
73+             // assert 
74+             Assert . Equal ( dt ,  querySet . Filters . Single ( f =>  f . Key  ==  "Key" ) . Value ) ; 
75+             Assert . Equal ( "le" ,  querySet . Filters . Single ( f =>  f . Key  ==  "Key" ) . Operation ) ; 
76+         } 
77+ 
78+         [ Fact ] 
79+         public  void  Filters_Properly_Parses_DateTime_Without_Operation ( ) 
80+         { 
81+             // arrange 
82+             const  string  dt  =  "2017-08-15T22:43:47.0156350-05:00" ; 
83+             var  query  =  new  Dictionary < string ,  StringValues >  { 
84+                 {  "filter[key]" ,  new  StringValues ( dt )  } 
85+             } ; 
86+ 
87+             _queryCollectionMock 
88+                 . Setup ( m =>  m . GetEnumerator ( ) ) 
89+                 . Returns ( query . GetEnumerator ( ) ) ; 
90+ 
91+             _jsonApiContextMock 
92+                 . Setup ( m =>  m . GetControllerAttribute < DisableQueryAttribute > ( ) ) 
93+                 . Returns ( new  DisableQueryAttribute ( QueryParams . None ) ) ; 
94+ 
95+             // act -- ctor calls BuildQuerySet() 
96+             var  querySet  =  new  QuerySet ( 
97+                 _jsonApiContextMock . Object , 
98+                 _queryCollectionMock . Object ) ; 
99+ 
100+             // assert 
101+             Assert . Equal ( dt ,  querySet . Filters . Single ( f =>  f . Key  ==  "Key" ) . Value ) ; 
102+             Assert . Equal ( string . Empty ,  querySet . Filters . Single ( f =>  f . Key  ==  "Key" ) . Operation ) ; 
103+         } 
104+ 
51105        [ Fact ] 
52106        public  void  Can_Disable_Filters ( ) 
53107        { 
0 commit comments