예제 #1
0
 public function test_key_by_attribute()
 {
     $data = new Collection(array(array('rating' => 1, 'name' => '1'), array('rating' => 2, 'name' => '2'), array('rating' => 3, 'name' => '3')));
     $actual = $data->keyBy('rating');
     $expected = array(1 => array('rating' => 1, 'name' => '1'), 2 => array('rating' => 2, 'name' => '2'), 3 => array('rating' => 3, 'name' => '3'));
     $this->assertEquals($expected, $actual->all());
     $actual = $data->keyBy(function ($item) {
         return $item['rating'] * 2;
     });
     $expected = array(2 => array('rating' => 1, 'name' => '1'), 4 => array('rating' => 2, 'name' => '2'), 6 => array('rating' => 3, 'name' => '3'));
     $this->assertEquals($expected, $actual->all());
 }