@@ -116,6 +116,31 @@ public function testCreate(): void
116116 $ this ->assertEquals (Query::TYPE_NOT_BETWEEN , $ query ->getMethod ());
117117 $ this ->assertEquals ('score ' , $ query ->getAttribute ());
118118 $ this ->assertEquals ([10 , 20 ], $ query ->getValues ());
119+
120+ // Test new date query wrapper methods
121+ $ query = Query::createdBefore ('2023-01-01T00:00:00.000Z ' );
122+
123+ $ this ->assertEquals (Query::TYPE_LESSER , $ query ->getMethod ());
124+ $ this ->assertEquals ('$createdAt ' , $ query ->getAttribute ());
125+ $ this ->assertEquals (['2023-01-01T00:00:00.000Z ' ], $ query ->getValues ());
126+
127+ $ query = Query::createdAfter ('2023-01-01T00:00:00.000Z ' );
128+
129+ $ this ->assertEquals (Query::TYPE_GREATER , $ query ->getMethod ());
130+ $ this ->assertEquals ('$createdAt ' , $ query ->getAttribute ());
131+ $ this ->assertEquals (['2023-01-01T00:00:00.000Z ' ], $ query ->getValues ());
132+
133+ $ query = Query::updatedBefore ('2023-12-31T23:59:59.999Z ' );
134+
135+ $ this ->assertEquals (Query::TYPE_LESSER , $ query ->getMethod ());
136+ $ this ->assertEquals ('$updatedAt ' , $ query ->getAttribute ());
137+ $ this ->assertEquals (['2023-12-31T23:59:59.999Z ' ], $ query ->getValues ());
138+
139+ $ query = Query::updatedAfter ('2023-12-31T23:59:59.999Z ' );
140+
141+ $ this ->assertEquals (Query::TYPE_GREATER , $ query ->getMethod ());
142+ $ this ->assertEquals ('$updatedAt ' , $ query ->getAttribute ());
143+ $ this ->assertEquals (['2023-12-31T23:59:59.999Z ' ], $ query ->getValues ());
119144 }
120145
121146 /**
@@ -225,6 +250,27 @@ public function testParse(): void
225250 $ this ->assertEquals (null , $ query ->getAttribute ());
226251 $ this ->assertEquals (['title ' , 'director ' ], $ query ->getValues ());
227252
253+ // Test new date query wrapper methods parsing
254+ $ query = Query::parse (Query::createdBefore ('2023-01-01T00:00:00.000Z ' )->toString ());
255+ $ this ->assertEquals ('lessThan ' , $ query ->getMethod ());
256+ $ this ->assertEquals ('$createdAt ' , $ query ->getAttribute ());
257+ $ this ->assertEquals (['2023-01-01T00:00:00.000Z ' ], $ query ->getValues ());
258+
259+ $ query = Query::parse (Query::createdAfter ('2023-01-01T00:00:00.000Z ' )->toString ());
260+ $ this ->assertEquals ('greaterThan ' , $ query ->getMethod ());
261+ $ this ->assertEquals ('$createdAt ' , $ query ->getAttribute ());
262+ $ this ->assertEquals (['2023-01-01T00:00:00.000Z ' ], $ query ->getValues ());
263+
264+ $ query = Query::parse (Query::updatedBefore ('2023-12-31T23:59:59.999Z ' )->toString ());
265+ $ this ->assertEquals ('lessThan ' , $ query ->getMethod ());
266+ $ this ->assertEquals ('$updatedAt ' , $ query ->getAttribute ());
267+ $ this ->assertEquals (['2023-12-31T23:59:59.999Z ' ], $ query ->getValues ());
268+
269+ $ query = Query::parse (Query::updatedAfter ('2023-12-31T23:59:59.999Z ' )->toString ());
270+ $ this ->assertEquals ('greaterThan ' , $ query ->getMethod ());
271+ $ this ->assertEquals ('$updatedAt ' , $ query ->getAttribute ());
272+ $ this ->assertEquals (['2023-12-31T23:59:59.999Z ' ], $ query ->getValues ());
273+
228274 $ query = Query::parse (Query::between ('age ' , 15 , 18 )->toString ());
229275 $ this ->assertEquals ('between ' , $ query ->getMethod ());
230276 $ this ->assertEquals ('age ' , $ query ->getAttribute ());
0 commit comments