1 database_test.test | DatabaseSelectOrderedTestCase::testSimpleSelectMultiOrdered() |
Test multiple order by.
File
- core/
modules/ simpletest/ tests/ database_test.test, line 1888 - Database tests.
Class
- DatabaseSelectOrderedTestCase
- Test select with order by clauses.
Code
function testSimpleSelectMultiOrdered() {
$query = db_select('test');
$name_field = $query->addField('test', 'name');
$age_field = $query->addField('test', 'age', 'age');
$job_field = $query->addField('test', 'job');
$query->orderBy($job_field);
$query->orderBy($age_field);
$result = $query->execute();
$num_records = 0;
$expected = array(
array('Ringo', 28, 'Drummer'),
array('John', 25, 'Singer'),
array('George', 27, 'Singer'),
array('Paul', 26, 'Songwriter'),
);
$results = $result->fetchAll(PDO::FETCH_NUM);
foreach ($expected as $k => $record) {
$num_records++;
foreach ($record as $kk => $col) {
if ($expected[$k][$kk] != $results[$k][$kk]) {
$this->assertTrue(FALSE, 'Results returned in correct order.');
}
}
}
$this->assertEqual($num_records, 4, 'Returned the correct number of rows.');
}