function testSorting() { $this->getDB(); $requestedIDs = $this->db->queryValues('SELECT ID FROM Test ORDER BY RANDOM()'); $this->assertTrue(count($requestedIDs) > 2); $this->assertEquals($requestedIDs, array_unique($requestedIDs)); $objects = DBTest::get($requestedIDs); $this->assertType('array', $objects); $this->assertEquals(count($objects), count($requestedIDs)); $foundIDs = array(); foreach ($objects as $o) { $this->assertType('object', $o); $foundIDs[] = $o->ID; } sort($foundIDs); sort($requestedIDs); $this->assertEquals($foundIDs, array_unique($foundIDs)); $this->assertEquals(array(), array_diff($requestedIDs, $foundIDs)); $this->assertTrue(usort($objects, array('DBTest', 'defaultSortFunction'))); }