mirror of
https://github.com/vrana/adminer.git
synced 2025-08-08 23:57:29 +02:00
Save coverage to temporary file
git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@927 7c3ca157-0c34-0410-bff1-cbf682f78f5c
This commit is contained in:
@@ -1,23 +1,16 @@
|
||||
<?php
|
||||
// coverage is used in tests and removed in compilation
|
||||
if (extension_loaded("xdebug") && function_exists('mysql_query') && mysql_query('SELECT 1 FROM adminer_test.coverage LIMIT 0')) {
|
||||
if (extension_loaded("xdebug") && file_exists(sys_get_temp_dir() . "/adminer_coverage.ser")) {
|
||||
function save_coverage() {
|
||||
$coverage = array();
|
||||
$result = mysql_query("SELECT filename, coverage_serialize FROM adminer_test.coverage");
|
||||
while ($row = mysql_fetch_assoc($result)) {
|
||||
$coverage[$row["filename"]] = unserialize($row["coverage_serialize"]);
|
||||
}
|
||||
mysql_free_result($result);
|
||||
$coverage_filename = sys_get_temp_dir() . "/adminer_coverage.ser";
|
||||
$coverage = unserialize(file_get_contents($coverage_filename));
|
||||
foreach (xdebug_get_code_coverage() as $filename => $lines) {
|
||||
foreach ($lines as $l => $val) {
|
||||
if (!$coverage[$filename][$l] || $val > 0) {
|
||||
$coverage[$filename][$l] = $val;
|
||||
}
|
||||
}
|
||||
mysql_query("
|
||||
REPLACE adminer_test.coverage (filename, coverage_serialize)
|
||||
VALUES ('" . mysql_real_escape_string($filename) . "', '" . mysql_real_escape_string(serialize($coverage[$filename])) . "')
|
||||
");
|
||||
file_put_contents($coverage_filename, serialize($coverage));
|
||||
}
|
||||
}
|
||||
xdebug_start_code_coverage(XDEBUG_CC_UNUSED | XDEBUG_CC_DEAD_CODE);
|
||||
|
Reference in New Issue
Block a user