atk4\data\tests\IteratorTest::testRawIterator PHP Method

testRawIterator() public method

public testRawIterator ( )
    public function testRawIterator()
    {
        $a = ['invoice' => [['total_net' => 10], ['total_net' => 20], ['total_net' => 15]]];
        $this->setDB($a);
        $db = new Persistence_SQL($this->db->connection);
        $i = (new Model($db, 'invoice'))->addFields(['total_net', 'total_vat']);
        $i->addExpression('total_gross', '[total_net]+[total_vat]');
        $i->setOrder('total_net');
        $i->onlyFields(['total_net']);
        $data = [];
        foreach ($i->rawIterator() as $row) {
            $data[] = $row;
            break;
        }
        foreach ($i->rawIterator() as $row) {
            $data[] = $row;
            $i->setLimit(1);
        }
        foreach ($i->rawIterator() as $row) {
            $data[] = $row;
        }
        $this->assertEquals([['total_net' => 10, 'id' => 1], ['total_net' => 10, 'id' => 1], ['total_net' => 15, 'id' => 3], ['total_net' => 20, 'id' => 2], ['total_net' => 10, 'id' => 1]], $data);
    }