/** @test */ public function it_can_sort_the_collection_items() { $collection = new Collection(); $collection->put('foo', ['name' => 'Foo']); $collection->put('bar', ['name' => 'Bar']); $collection->put('baz', ['name' => 'Baz']); $collection->sort(function ($item) { return $item; }); $this->assertEquals(['foo' => ['name' => 'Foo'], 'bar' => ['name' => 'Bar'], 'baz' => ['name' => 'Baz']], $collection->all()); $this->assertEquals(['bar' => ['name' => 'Bar'], 'baz' => ['name' => 'Baz'], 'foo' => ['name' => 'Foo']], $collection->sortBy('name')->all()); $expected = ['foo' => ['name' => 'Foo'], 'baz' => ['name' => 'Baz'], 'bar' => ['name' => 'Bar']]; $output = $collection->sortByDesc('name')->all(); $this->assertEquals($expected, $output); }