Pinq\Tests\Integration\Traversable\GetIndexTest::testThatIndexesSupportArrayKeys PHP Method

testThatIndexesSupportArrayKeys() public method

public testThatIndexesSupportArrayKeys ( Pinq\ITraversable $traversable, array $data )
$traversable Pinq\ITraversable
$data array
    public function testThatIndexesSupportArrayKeys(\Pinq\ITraversable $traversable, array $data)
    {
        $traversable = $traversable->indexBy(function ($value, $key) {
            return ['foo' => $key, 2 => 3];
        });
        foreach ($data as $key => $value) {
            //Arrays are value types, no reference required
            $this->assertTrue(isset($traversable[['foo' => $key, 2 => 3]]));
            $this->assertSame($value, $traversable[['foo' => $key, 2 => 3]]);
            $this->assertFalse(isset($traversable[['foo' => $key, 2 => '3']]), 'Should be using strict equality for arrays (order matters)');
            $this->assertFalse(isset($traversable[[2 => 3, 'foo' => $key]]), 'Should be using strict equality for arrays (order matters)');
        }
    }