diff --git a/platform/mellanox/mlnx-platform-api/sonic_platform/led.py b/platform/mellanox/mlnx-platform-api/sonic_platform/led.py index e5e5c8a19..49c243fd8 100644 --- a/platform/mellanox/mlnx-platform-api/sonic_platform/led.py +++ b/platform/mellanox/mlnx-platform-api/sonic_platform/led.py @@ -61,6 +61,16 @@ class Led(object): else: return False + utils.write_file(led_path, Led.LED_ON) + status = True + elif color == Led.STATUS_LED_COLOR_ORANGE: + if Led.STATUS_LED_COLOR_ORANGE in led_cap_list: + led_path = self.get_orange_led_path() + elif Led.STATUS_LED_COLOR_RED in led_cap_list: + led_path = self.get_red_led_path() + else: + return False + utils.write_file(led_path, Led.LED_ON) status = True elif color == Led.STATUS_LED_COLOR_OFF: diff --git a/platform/mellanox/mlnx-platform-api/tests/test_led.py b/platform/mellanox/mlnx-platform-api/tests/test_led.py index 2a32eca2b..7a9ebaf05 100644 --- a/platform/mellanox/mlnx-platform-api/tests/test_led.py +++ b/platform/mellanox/mlnx-platform-api/tests/test_led.py @@ -63,7 +63,9 @@ class TestLed: assert obj.set_status_led(Led.STATUS_LED_COLOR_GREEN) is True assert obj.get_status_led() == Led.STATUS_LED_COLOR_GREEN mock_file_content[physical_led.get_green_led_path()] = Led.LED_OFF - assert obj.set_status_led(Led.STATUS_LED_COLOR_ORANGE) is False + assert obj.set_status_led(Led.STATUS_LED_COLOR_ORANGE) is True + assert obj.get_status_led() == Led.STATUS_LED_COLOR_RED + mock_file_content[physical_led.get_orange_led_path()] = Led.LED_OFF assert obj.set_status_led(Led.STATUS_LED_COLOR_RED_BLINK) assert obj.get_status_led() == Led.STATUS_LED_COLOR_RED_BLINK @@ -86,7 +88,7 @@ class TestLed: led.get_green_led_path(): Led.LED_ON, led.get_red_led_path(): Led.LED_OFF, led.get_orange_led_path(): Led.LED_OFF, - led.get_led_cap_path(): 'none green green_blink red red_blink', + led.get_led_cap_path(): 'none green green_blink red red_blink orange', led.get_green_led_delay_off_path(): Led.LED_OFF, led.get_green_led_delay_on_path(): Led.LED_OFF, led.get_red_led_delay_off_path(): Led.LED_OFF,