NsplTest\ATest::testIndexed PHP Метод

testIndexed() публичный Метод

public testIndexed ( )
    public function testIndexed()
    {
        $animals = [array('id' => 9, 'type' => 'cat', 'name' => 'Snowball'), array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper'), array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy')];
        $this->assertEquals(array(9 => array('id' => 9, 'type' => 'cat', 'name' => 'Snowball'), 10 => array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper'), 11 => array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy')), indexed($animals, 'id'));
        $this->assertEquals(array(9 => array('id' => 9, 'type' => 'cat', 'name' => 'Snowball'), 10 => array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper'), 11 => array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy')), indexed(new \ArrayIterator($animals), 'id'));
        $this->assertEquals(array('cat' => array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy'), 'dog' => array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper')), indexed($animals, 'type'));
        $this->assertEquals(array('cat' => [array('id' => 9, 'type' => 'cat', 'name' => 'Snowball'), array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy')], 'dog' => [array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper')]), indexed($animals, 'type', false));
        $this->assertEquals(array(3 => [array('id' => 9, 'type' => 'cat', 'name' => 'Snowball'), array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper'), array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy')]), indexed($animals, function ($animal) {
            return strlen($animal['type']);
        }, false));
        $this->assertEquals(array('Snowball' => 'cat', 'Santa\'s Little Helper' => 'dog', 'Fluffy' => 'cat'), indexed($animals, 'name', true, function ($animal) {
            return $animal['type'];
        }));
        $this->assertEquals(array(9 => array('id' => 9, 'type' => 'cat', 'name' => 'Snowball'), 10 => array('id' => 10, 'type' => 'dog', 'name' => 'Santa\'s Little Helper'), 11 => array('id' => 11, 'type' => 'cat', 'name' => 'Fluffy')), call_user_func(indexed, $animals, 'id'));
        $this->assertEquals('\\nspl\\a\\indexed', indexed);
    }