Skip to content

Commit 4a7f5c1

Browse files
authored
Merge pull request mongodb#2039 from trybeapp/master
tests: for sorting
2 parents 8978432 + c615e9a commit 4a7f5c1

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

tests/QueryTest.php

+47
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)