mirror of
				https://github.com/gtbu/Typesetter-5.3-p8.git
				synced 2025-11-04 14:58:28 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			937 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			937 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
/**
 | 
						|
 * Start xdebug code coverage
 | 
						|
 * Register autoload for merging coverage with php-code-coverage
 | 
						|
 * https://stackoverflow.com/questions/10167775/aggregating-code-coverage-from-several-executions-of-phpunit
 | 
						|
 *
 | 
						|
 */
 | 
						|
 | 
						|
defined('gp_unit_testing') or define('gp_unit_testing',true);
 | 
						|
defined('gpdebug') or define('gpdebug',true); // sets error_reporting(ALL)
 | 
						|
 | 
						|
if( function_exists('xdebug_start_code_coverage') ){
 | 
						|
	xdebug_start_code_coverage();
 | 
						|
 | 
						|
	function SaveXdebugCoverage(){
 | 
						|
		$cov_dir	= dirname(__DIR__).'/x_coverage';
 | 
						|
		$name		= str_replace('/','-','request-'.$_SERVER['HTTP_X_REQ_ID'].'-'.$_SERVER['REQUEST_METHOD'].'-'.$_SERVER['REQUEST_URI']);
 | 
						|
		$cov_file	= $cov_dir.'/'.$name.'.json';
 | 
						|
		$data		= xdebug_get_code_coverage();
 | 
						|
		file_put_contents( $cov_file, json_encode($data,JSON_PRETTY_PRINT));
 | 
						|
	}
 | 
						|
 | 
						|
	register_shutdown_function('SaveXdebugCoverage');
 | 
						|
	ob_start(function($buffer){
 | 
						|
		SaveXdebugCoverage();
 | 
						|
		return $buffer;
 | 
						|
	});
 | 
						|
}
 |