@@ -50,7 +50,7 @@ public function setUp(): void
5050 'device_type ' => 'mobile ' ,
5151 'country ' => null
5252 ], [
53-
53+
5454 'user_id ' => 2 ,
5555 'created_at ' => Carbon::now ()->subDays (3 ),
5656 'device_type ' => 'mobile ' ,
@@ -109,9 +109,9 @@ public function latest_relation()
109109 $ loggedInYesterday = User::whereHas ('logins ' , function ($ query ) {
110110 $ query ->latestRelation ()->whereBetween (
111111 'created_at ' , [
112- Carbon::now ()->subDay (1 )->startOfDay (),
113- Carbon::now ()->subDay (1 )->endOfDay ()
114- ]);
112+ Carbon::now ()->subDay (1 )->startOfDay (),
113+ Carbon::now ()->subDay (1 )->endOfDay ()
114+ ]);
115115 });
116116
117117 $ this ->assertSame (1 , $ loggedInYesterday ->count ());
@@ -121,7 +121,7 @@ public function latest_relation()
121121 /**
122122 * @test
123123 */
124- public function earilest_relation ()
124+ public function earliest_relation ()
125125 {
126126 $ users = User::whereHas ('logins ' , function ($ query ) {
127127 $ query ->earliestRelation ()->whereNotNull ('country ' );
@@ -160,12 +160,12 @@ public function where_latest()
160160 /**
161161 * @test
162162 */
163- public function where_earilest ()
163+ public function where_earliest ()
164164 {
165165 $ users = User::whereHas ('logins ' , function ($ query ) {
166166 $ query ->whereEarliest ('device_type ' , 'mobile ' );
167167 })->get ();
168-
168+
169169 $ this ->assertCount (3 , $ users );
170170
171171 $ users = User::whereHas ('logins ' , function ($ query ) {
@@ -181,7 +181,7 @@ public function where_earilest()
181181 public function where_latest_relation ()
182182 {
183183 $ users = User::whereLatestRelation ('logins ' , 'device_type ' , 'mobile ' )->get ();
184-
184+
185185 $ this ->assertCount (2 , $ users );
186186 $ this ->assertSame ('Cameron Frye ' , $ users ->first ()->name );
187187 $ this ->assertSame ('mobile ' , $ users ->first ()->lastLogin ->device_type );
@@ -200,16 +200,38 @@ public function where_latest_relation()
200200 /**
201201 * @test
202202 */
203- public function where_earilest_relation ()
203+ public function where_earliest_relation ()
204204 {
205205 $ users = User::whereEarliestRelation ('logins ' , 'device_type ' , 'mobile ' )->get ();
206-
206+
207207 $ this ->assertCount (3 , $ users );
208208
209209 $ users = User::whereEarliestRelation ('logins ' , 'device_type ' , 'desktop ' )->get ();
210210
211211 $ this ->assertCount (0 , $ users );
212212 }
213+
214+ /**
215+ * @test
216+ */
217+ public function where_latest_relation_country_is_not_null ()
218+ {
219+ $ users = User::whereLatestRelation ('logins ' , 'country ' , '!= ' , 'null ' );
220+
221+ $ this ->assertSame (1 , $ users ->count ());
222+ $ this ->assertSame ('Ferris Bueller ' , $ users ->first ()->name );
223+ }
224+
225+ /**
226+ * @test
227+ */
228+ public function where_earliest_relation_country_is_not_null ()
229+ {
230+ $ users = User::whereEarliestRelation ('logins ' , 'country ' , '!= ' , 'null ' );
231+
232+ $ this ->assertSame (1 , $ users ->count ());
233+ $ this ->assertSame ('Ed Rooney ' , $ users ->first ()->name );
234+ }
213235}
214236
215237class User extends Model
@@ -231,4 +253,4 @@ public function user()
231253 {
232254 return $ this ->belongsTo (User::class);
233255 }
234- }
256+ }
0 commit comments