@@ -352,4 +352,51 @@ public function testUpdate(): void
352352 $ this ->assertEquals (2 , Scoped::withoutGlobalScopes ()->update (['name ' => 'Jimmy ' ]));
353353 $ this ->assertCount (2 , Scoped::withoutGlobalScopes ()->where (['name ' => 'Jimmy ' ])->get ());
354354 }
355+
356+ public function testUnsorted (): void
357+ {
358+ $ unsortedResults = User::get ();
359+
360+ $ unsortedSubset = $ unsortedResults ->where ('age ' , 35 )->values ();
361+
362+ $ this ->assertEquals ('John Doe ' , $ unsortedSubset [0 ]->name );
363+ $ this ->assertEquals ('Brett Boe ' , $ unsortedSubset [1 ]->name );
364+ $ this ->assertEquals ('Yvonne Yoe ' , $ unsortedSubset [2 ]->name );
365+ }
366+
367+ public function testSort (): void
368+ {
369+ $ results = User::orderBy ('age ' )->get ();
370+
371+ $ this ->assertEquals ($ results ->sortBy ('age ' )->pluck ('age ' )->all (), $ results ->pluck ('age ' )->all ());
372+ }
373+
374+ public function testSortOrder (): void
375+ {
376+ $ results = User::orderBy ('age ' , 'desc ' )->get ();
377+
378+ $ this ->assertEquals ($ results ->sortByDesc ('age ' )->pluck ('age ' )->all (), $ results ->pluck ('age ' )->all ());
379+ }
380+
381+ public function testMultipleSort (): void
382+ {
383+ $ results = User::orderBy ('age ' )->orderBy ('name ' )->get ();
384+
385+ $ subset = $ results ->where ('age ' , 35 )->values ();
386+
387+ $ this ->assertEquals ('Brett Boe ' , $ subset [0 ]->name );
388+ $ this ->assertEquals ('John Doe ' , $ subset [1 ]->name );
389+ $ this ->assertEquals ('Yvonne Yoe ' , $ subset [2 ]->name );
390+ }
391+
392+ public function testMultipleSortOrder (): void
393+ {
394+ $ results = User::orderBy ('age ' )->orderBy ('name ' , 'desc ' )->get ();
395+
396+ $ subset = $ results ->where ('age ' , 35 )->values ();
397+
398+ $ this ->assertEquals ('Yvonne Yoe ' , $ subset [0 ]->name );
399+ $ this ->assertEquals ('John Doe ' , $ subset [1 ]->name );
400+ $ this ->assertEquals ('Brett Boe ' , $ subset [2 ]->name );
401+ }
355402}
0 commit comments