public function assertDbQuery($sqlPart, $message = null)
{
$queryProfiles = $this->_profiler->getQueryProfiles();
$this->_test->assertTrue(is_array($queryProfiles), "No database queries were made.");
$ranQuery = false;
if (is_array($sqlPart)) {
$query = $sqlPart[0];
$params = $sqlPart[1];
} else {
$query = $sqlPart;
}
foreach ($queryProfiles as $profile) {
if (strpos($profile->getQuery(), $query) !== false) {
if (isset($params) && $profile->getQueryParams() == $params) {
$ranQuery = true;
break;
} else {
if (!isset($params)) {
$ranQuery = true;
break;
}
}
}
}
$this->_test->assertTrue($ranQuery, $message . PHP_EOL . "Should have run SQL query containing '{$query}'." . (isset($params) ? PHP_EOL . "Should have been passed parameters: " . print_r($params, true) : ''));
}