Elgg\Mocks\DatabaseTest::testCanGetData PHP Method

testCanGetData() public method

public testCanGetData ( )
    public function testCanGetData()
    {
        $data = [['id' => 1, 'foo' => 'bar1'], ['id' => 2, 'foo' => 'bar2'], ['id' => 3, 'foo' => 'bar1']];
        _elgg_services()->db->addQuerySpec(['sql' => 'SELECT FROM A WHERE foo = :foo', 'params' => [':foo' => 'bar1'], 'results' => function () use($data) {
            $results = [];
            foreach ($data as $elem) {
                if ($elem['foo'] == 'bar1') {
                    $results[] = (object) $elem;
                }
            }
            return $results;
        }]);
        $this->assertEquals([$data[0], $data[2]], get_data('SELECT FROM A WHERE foo = :foo', [$this, 'rowToArray'], [':foo' => 'bar1']));
        $this->assertEquals($data[0], get_data_row('SELECT FROM A WHERE foo = :foo', [$this, 'rowToArray'], [':foo' => 'bar1']));
    }