Merge pull request #4958 from pratikshad/code-cleanup-batch-19
[civicrm-core.git] / Civi / CiUtil / PHPUnitParser.php
1 <?php
2 namespace Civi\CiUtil;
3
4 /**
5 * Parse phpunit result files
6 */
7 class PHPUnitParser {
8 /**
9 * @param string $content
10 * Phpunit streaming JSON.
11 * @return array
12 * ["$class::$func" => $status]
13 */
14 protected static function parseJsonStream($content) {
15 $content = '['
16 . strtr($content, array("}{" => "},{"))
17 . ']';
18 return json_decode($content, TRUE);
19 }
20
21 /**
22 * @param string $content
23 * Json stream.
24 * @return array
25 * (string $testName => string $status)
26 */
27 public static function parseJsonResults($content) {
28 $records = self::parseJsonStream($content);
29 $results = array();
30 foreach ($records as $r) {
31 if ($r['event'] == 'test') {
32 $results[$r['test']] = $r['status'];
33 }
34 }
35 return $results;
36 }
37
38 }