4f32db21dc0ce8a2548263511535eb0e4a0568cb
[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(string "$class::$func" => $status)
12 */
13 protected static function parseJsonStream($content) {
14 $content = '['
15 . strtr($content, array("}{" => "},{"))
16 . ']';
17 return json_decode($content, TRUE);
18 }
19
20 /**
21 * @param string $content
22 * Json stream.
23 * @return array
24 * (string $testName => string $status)
25 */
26 public static function parseJsonResults($content) {
27 $records = self::parseJsonStream($content);
28 $results = array();
29 foreach ($records as $r) {
30 if ($r['event'] == 'test') {
31 $results[$r['test']] = $r['status'];
32 }
33 }
34 return $results;
35 }
36
37 }