lithium\tests\integration\data\source\database\adapter\PostgreSqlTest::testQueryOrdering PHP Метод

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

public testQueryOrdering ( )
    public function testQueryOrdering()
    {
        $insert = new Query(array('type' => 'create', 'source' => 'galleries', 'data' => array('name' => 'Foo', 'active' => true, 'created' => date('Y-m-d H:i:s'))));
        $this->assertTrue($this->_db->create($insert));
        $insert->data(array('name' => 'Bar', 'created' => date('Y-m-d H:i:s', strtotime('-5 minutes'))));
        $this->assertTrue($this->_db->create($insert));
        $insert->data(array('name' => 'Baz', 'created' => date('Y-m-d H:i:s', strtotime('-10 minutes'))));
        $this->assertTrue($this->_db->create($insert));
        $read = new Query(array('type' => 'read', 'source' => 'galleries', 'fields' => array('name'), 'order' => array('created' => 'asc')));
        $result = $this->_db->read($read, array('return' => 'array'));
        $expected = array(array('name' => 'Baz'), array('name' => 'Bar'), array('name' => 'Foo'));
        $this->assertEqual($expected, $result);
        $read->order(array('created' => 'desc'));
        $result = $this->_db->read($read, array('return' => 'array'));
        $expected = array(array('name' => 'Foo'), array('name' => 'Bar'), array('name' => 'Baz'));
        $this->assertEqual($expected, $result);
        $delete = new Query(array('type' => 'delete', 'source' => 'galleries'));
        $this->assertTrue($this->_db->delete($delete));
    }