3 final class HarbormasterUnitStatus
6 public static function getUnitStatusIcon($status) {
7 $map = self
::getUnitStatusDictionary($status);
8 $default = 'fa-question-circle';
9 return idx($map, 'icon', $default);
12 public static function getUnitStatusColor($status) {
13 $map = self
::getUnitStatusDictionary($status);
15 return idx($map, 'color', $default);
18 public static function getUnitStatusLabel($status) {
19 $map = self
::getUnitStatusDictionary($status);
20 $default = pht('Unknown Status ("%s")', $status);
21 return idx($map, 'label', $default);
24 public static function getUnitStatusSort($status) {
25 $map = self
::getUnitStatusDictionary($status);
27 return idx($map, 'sort', $default);
30 private static function getUnitStatusDictionary($status) {
31 $map = self
::getUnitStatusMap();
33 return idx($map, $status, $default);
36 public static function getUnitStatusCountLabel($status, $count) {
37 $count = new PhutilNumber($count);
40 case ArcanistUnitTestResult
::RESULT_FAIL
:
41 return pht('%s Failed Test(s)', $count);
42 case ArcanistUnitTestResult
::RESULT_BROKEN
:
43 return pht('%s Broken Test(s)', $count);
44 case ArcanistUnitTestResult
::RESULT_UNSOUND
:
45 return pht('%s Unsound Test(s)', $count);
46 case ArcanistUnitTestResult
::RESULT_PASS
:
47 return pht('%s Passed Test(s)', $count);
48 case ArcanistUnitTestResult
::RESULT_SKIP
:
49 return pht('%s Skipped Test(s)', $count);
52 return pht('%s Other Test(s)', $count);
55 private static function getUnitStatusMap() {
57 ArcanistUnitTestResult
::RESULT_FAIL
=> array(
58 'label' => pht('Failed'),
63 ArcanistUnitTestResult
::RESULT_BROKEN
=> array(
64 'label' => pht('Broken'),
69 ArcanistUnitTestResult
::RESULT_UNSOUND
=> array(
70 'label' => pht('Unsound'),
71 'icon' => 'fa-exclamation-triangle',
75 ArcanistUnitTestResult
::RESULT_PASS
=> array(
76 'label' => pht('Passed'),
81 ArcanistUnitTestResult
::RESULT_SKIP
=> array(
82 'label' => pht('Skipped'),
83 'icon' => 'fa-fast-forward',