Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
44.44% |
4 / 9 |
CRAP | |
53.66% |
22 / 41 |
Report | |
0.00% |
0 / 1 |
|
44.44% |
4 / 9 |
50.24 | |
53.66% |
22 / 41 |
__construct(array $results = array(), array $parameters = array()) | |
100.00% |
1 / 1 |
1 | |
100.00% |
3 / 3 |
|||
addResult(IResult $result) | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
setResults(array $results) | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 2 |
|||
getResults() | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getSettings($groups = null, $flag = null) | |
100.00% |
1 / 1 |
3 | |
100.00% |
7 / 7 |
|||
getCachableSettings($groups = null, $flag = null) | |
0.00% |
0 / 1 |
12 | |
0.00% |
0 / 7 |
|||
getSettingsAsArray($groups = null, $flag = null) | |
100.00% |
1 / 1 |
4 | |
100.00% |
10 / 10 |
|||
getCachableSettingsAsArray($groups = null, $flag = null) | |
0.00% |
0 / 1 |
12 | |
0.00% |
0 / 7 |
|||
setParameters(Parameters $parameters) | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 2 |
<?php | |
namespace Environaut\Report; | |
use Environaut\Report\Results\IResult; | |
use Environaut\Report\Results\Result; | |
use Environaut\Config\Parameters; | |
/** | |
* Default class that holds results from checks. | |
*/ | |
class Report implements IReport | |
{ | |
/** | |
* Holds the results of all checks. | |
* | |
* @var array for results of processed checks | |
*/ | |
protected $results = array(); | |
/** | |
* @var Parameters runtime parameters | |
*/ | |
protected $parameters; | |
/** | |
* Creates a new Report instance. | |
* | |
* @param array $results array of IResult instances to prefill the instance | |
* @param array $parameters array of runtime parameters | |
*/ | |
public function __construct(array $results = array(), array $parameters = array()) | |
{ | |
$this->results = $results; | |
$this->parameters = new Parameters($parameters); | |
} | |
/** | |
* Adds the given result to this report. | |
* | |
* @param \Environaut\Report\Results\IResult $result result to add to this report | |
* | |
* @return Report this instance for fluent API support | |
*/ | |
public function addResult(IResult $result) | |
{ | |
$this->results[] = $result; | |
return $this; | |
} | |
/** | |
* Replaces the current results with the given IResult instances. | |
* | |
* @param array $results array of IResult instances | |
* | |
* @return Report this instance for fluent API support | |
*/ | |
public function setResults(array $results) | |
{ | |
$this->results = $results; | |
return $this; | |
} | |
/** | |
* Returns all results of the already processed checks. | |
* | |
* @return array of IResult instances | |
*/ | |
public function getResults() | |
{ | |
return $this->results; | |
} | |
/** | |
* Returns an array of ISetting instances that match the given criterias | |
* from the successful results of this report. | |
* | |
* @param mixed $groups string or array of group names settings should match, the default null matches always | |
* @param integer $flag type of settings to get | |
* | |
* @return array of ISetting instances | |
*/ | |
public function getSettings($groups = null, $flag = null) | |
{ | |
$settings = array(); | |
foreach ($this->results as $result) { | |
if (IResult::SUCCESS === $result->getStatus()) { | |
$settings = array_merge($settings, $result->getSettings($groups, $flag)); | |
} | |
} | |
return $settings; | |
} | |
/** | |
* Returns an array of cachable ISetting instances that match the given criterias | |
* from the successful results of this report. | |
* | |
* @param mixed $groups string or array of group names settings should match, the default null matches always | |
* @param integer $flag type of settings to get | |
* | |
* @return array of ISetting instances | |
*/ | |
public function getCachableSettings($groups = null, $flag = null) | |
{ | |
$settings = array(); | |
foreach ($this->results as $result) { | |
if (IResult::SUCCESS === $result->getStatus()) { | |
$settings = array_merge($settings, $result->getCachableSettings($groups, $flag)); | |
} | |
} | |
return $settings; | |
} | |
/** | |
* Returns an array of associative arrays for each ISetting instance | |
* that matches the given criterias (from the successful results of this report). | |
* | |
* @param mixed $groups string or array of group names settings should match, the default null matches always | |
* @param integer $flag type of settings to get | |
* | |
* @return array of associative arrays for each ISetting instance that matched | |
*/ | |
public function getSettingsAsArray($groups = null, $flag = null) | |
{ | |
$settings = array(); | |
foreach ($this->results as $result) { | |
if (IResult::SUCCESS === $result->getStatus()) { | |
$new_settings = $result->getSettingsAsArray($groups, $flag); | |
foreach ($new_settings as $s) { | |
$settings[] = $s; | |
} | |
} | |
} | |
return $settings; | |
} | |
/** | |
* Returns an array of associative arrays for each cachable ISetting instance | |
* that matches the given criterias (from the successful results of this report). | |
* | |
* @param mixed $groups string or array of group names settings should match, the default null matches always | |
* @param integer $flag type of settings to get | |
* | |
* @return array of associative arrays for each ISetting instance that matched | |
*/ | |
public function getCachableSettingsAsArray($groups = null, $flag = null) | |
{ | |
$settings = array(); | |
foreach ($this->results as $result) { | |
if (IResult::SUCCESS === $result->getStatus()) { | |
$settings[] = array_merge($settings, $result->getCachableSettingsAsArray($groups, $flag)); | |
} | |
} | |
return $settings; | |
} | |
/** | |
* Runtime parameters to configure the report behaviour. | |
* | |
* @param Parameters $parameters runtime parameters to use | |
* | |
* @return Report this instance for fluent API support | |
*/ | |
public function setParameters(Parameters $parameters) | |
{ | |
$this->parameters = $parameters; | |
return $this; | |
} | |
} |