1270a4118SMarissa Garza*** Settings *** 2270a4118SMarissa GarzaDocumentation Check the indicator LEDs on the system can set the assert 3270a4118SMarissa Garza... property to the correct state. 4270a4118SMarissa Garza 5270a4118SMarissa GarzaResource ../../lib/rest_client.robot 6270a4118SMarissa GarzaResource ../../lib/bmc_redfish_resource.robot 7270a4118SMarissa GarzaResource ../../lib/bmc_redfish_utils.robot 8270a4118SMarissa GarzaResource ../../lib/openbmc_ffdc.robot 9270a4118SMarissa GarzaResource ../../lib/resource.robot 10270a4118SMarissa GarzaResource ../../lib/boot_utils.robot 11270a4118SMarissa GarzaLibrary ../../lib/gen_robot_valid.py 12270a4118SMarissa GarzaLibrary ../../lib/gen_robot_keyword.py 13270a4118SMarissa Garza 14270a4118SMarissa GarzaSuite Setup Suite Setup Execution 15270a4118SMarissa GarzaSuite Teardown Suite Teardown Execution 16270a4118SMarissa GarzaTest Setup Printn 17270a4118SMarissa GarzaTest Teardown Test Teardown Execution 18270a4118SMarissa Garza 19270a4118SMarissa Garza 20270a4118SMarissa Garza*** Test Cases *** 21270a4118SMarissa Garza 22270a4118SMarissa GarzaVerify LED Lamp Test Asserted At Standby 23270a4118SMarissa Garza [Documentation] Verify the LED asserted at standby is set to off or blinking. 24270a4118SMarissa Garza [Tags] Verify_LED_Lamp_Test_Asserted_At_Standby 25270a4118SMarissa Garza [Template] Set and Verify Lamp LED Indicator 26270a4118SMarissa Garza 27270a4118SMarissa Garza # pre_req_state asserted expected_indicator_led 28270a4118SMarissa Garza Off 1 Blinking 29270a4118SMarissa Garza Off 0 Off 30270a4118SMarissa Garza 31270a4118SMarissa Garza 32270a4118SMarissa GarzaVerify LED Lamp Test Asserted At Runtime 33270a4118SMarissa Garza [Documentation] Verify the LED asserted at runtime is set to off or blinking. 34270a4118SMarissa Garza [Tags] Verify_LED_Lamp_Test_Asserted_At_Runtime 35270a4118SMarissa Garza [Template] Set and Verify Lamp LED Indicator 36270a4118SMarissa Garza 37270a4118SMarissa Garza # pre_req_state asserted expected_indicator_led 38270a4118SMarissa Garza On 1 Blinking 39270a4118SMarissa Garza On 0 Off 40270a4118SMarissa Garza 41270a4118SMarissa Garza 42270a4118SMarissa GarzaVerify LED Power Supply Units Asserted At Standby 43270a4118SMarissa Garza [Documentation] Verify the power supply units are asserted at standby to lit or off. 44270a4118SMarissa Garza [Tags] Verify_LED_Power_Supply_Units_Asserted_At_Standby 45270a4118SMarissa Garza [Template] Set and Verify LED Indicator 46270a4118SMarissa Garza 47270a4118SMarissa Garza # pre_req_state asserted expected_indicator_led 48270a4118SMarissa Garza Off "xyz.openbmc_project.Led.Physical.Action.On" Lit 49270a4118SMarissa Garza Off "xyz.openbmc_project.Led.Physical.Action.Off" Off 50270a4118SMarissa Garza 51270a4118SMarissa Garza 52270a4118SMarissa GarzaVerify LED Power Supply Units Asserted At Runtime 53270a4118SMarissa Garza [Documentation] Verify the power supply units are asserted at runtime to lit or off. 54270a4118SMarissa Garza [Tags] Verify_LED_Power_Supply_Units_Asserted_At_Runtime 55270a4118SMarissa Garza [Template] Set and Verify LED Indicator 56270a4118SMarissa Garza 57270a4118SMarissa Garza # pre_req_state asserted expected_indicator_led 58270a4118SMarissa Garza On "xyz.openbmc_project.Led.Physical.Action.On" Lit 59270a4118SMarissa Garza On "xyz.openbmc_project.Led.Physical.Action.Off" Off 60270a4118SMarissa Garza 61270a4118SMarissa Garza 623fc34054SMarissa GarzaVerify LED Fans Asserted At Standby 633fc34054SMarissa Garza [Documentation] Verify the fans are asserted at standby to lit or off. 643fc34054SMarissa Garza [Tags] Verify_LED_Fans_Asserted_At_Standby 653fc34054SMarissa Garza [Template] Set and Verify Fan LED Indicators 663fc34054SMarissa Garza 673fc34054SMarissa Garza # pre_req_state asserted expected_indicator_led 683fc34054SMarissa Garza Off "xyz.openbmc_project.Led.Physical.Action.On" Lit 693fc34054SMarissa Garza Off "xyz.openbmc_project.Led.Physical.Action.Off" Off 703fc34054SMarissa Garza 713fc34054SMarissa Garza 723fc34054SMarissa GarzaVerify LED Fans Asserted At Runtime 733fc34054SMarissa Garza [Documentation] Verify the fans are asserted at runtime to lit or off. 743fc34054SMarissa Garza [Tags] Verify_LED_Fans_Asserted_At_Runtime 753fc34054SMarissa Garza [Template] Set and Verify Fan LED Indicators 763fc34054SMarissa Garza 773fc34054SMarissa Garza # pre_req_state asserted expected_indicator_led 783fc34054SMarissa Garza On "xyz.openbmc_project.Led.Physical.Action.On" Lit 793fc34054SMarissa Garza On "xyz.openbmc_project.Led.Physical.Action.Off" Off 803fc34054SMarissa Garza 813fc34054SMarissa Garza 822643e59aSAlagiridhilipankVerify Location Indicator Active status 832643e59aSAlagiridhilipank [Documentation] Verify the Location Indicator Active status to true or false. 842643e59aSAlagiridhilipank [Tags] Verify_Location_Indicator_Active_status 852643e59aSAlagiridhilipank [setup] Set Suite LED Indicator Initial Value 86c63bfe64SGeorge Keishing [Teardown] Set Initial Value ${value} 872643e59aSAlagiridhilipank 882643e59aSAlagiridhilipank 892643e59aSAlagiridhilipank Set And Verify LED Location Indicator Active ${set_value} 902643e59aSAlagiridhilipank 912643e59aSAlagiridhilipank 92270a4118SMarissa Garza*** Keywords *** 93270a4118SMarissa Garza 94270a4118SMarissa GarzaSet and Verify Lamp LED Indicator 95270a4118SMarissa Garza [Documentation] Verify the indicator LED for the group lamp test is asserted. 96270a4118SMarissa Garza [Arguments] ${pre_req_state} ${asserted} ${expected_indicator_led} 97270a4118SMarissa Garza 98270a4118SMarissa Garza # Description of Arguments(s): 99270a4118SMarissa Garza # pre_req_state The pre-requisite state of the host to perform the test (e.g. "On") 100270a4118SMarissa Garza # asserted The assert property that sets the value to 0 - Off or 1 - Blinking (e.g. "1") 101270a4118SMarissa Garza # expected_indicator_led The expected value of the IndicatorLED attribute for all the 102270a4118SMarissa Garza # LEDs after the lamp test is initiated (e.g. "Blinking") 103270a4118SMarissa Garza 104270a4118SMarissa Garza Run Key U Redfish Power ${pre_req_state} \ stack_mode=skip \ quiet=1 105270a4118SMarissa Garza Redfish.Login 106270a4118SMarissa Garza 107270a4118SMarissa Garza Redfish.Put ${LED_LAMP_TEST_ASSERTED_URI}attr/Asserted body={"data":${asserted}} 108270a4118SMarissa Garza 109270a4118SMarissa Garza # Example result: 110270a4118SMarissa Garza # power_supplies: 111270a4118SMarissa Garza # [0]: 112270a4118SMarissa Garza # [MemberId]: powersupply0 113270a4118SMarissa Garza # [PartNumber]: 02CL396 114270a4118SMarissa Garza # [IndicatorLED]: Blinking 115270a4118SMarissa Garza # [EfficiencyPercent]: 90 116270a4118SMarissa Garza # [Status]: 117270a4118SMarissa Garza # [Health]: OK 118270a4118SMarissa Garza # [State]: Enabled 119270a4118SMarissa Garza 120270a4118SMarissa Garza Verify Indicator LEDs ${expected_indicator_led} 121270a4118SMarissa Garza 122270a4118SMarissa Garza 123270a4118SMarissa GarzaSet and Verify LED Indicator 124270a4118SMarissa Garza [Documentation] Verify the indicator LED for the power supply units are asserted. 125270a4118SMarissa Garza [Arguments] ${pre_req_state} ${asserted} ${expected_indicator_led} 126270a4118SMarissa Garza 127270a4118SMarissa Garza # Description of Arguments(s): 128270a4118SMarissa Garza # pre_req_state The pre-requisite state of the host to perform the test (e.g. "On") 129e4d41420SGeorge Keishing # asserted The assert property that sets the value 130e4d41420SGeorge Keishing # (e.g. "xyz.openbmc_project.Led.Physical.Action.On") 131270a4118SMarissa Garza # expected_indicator_led The expected value of the IndicatorLED attribute for all the 132270a4118SMarissa Garza # power supplies units are initiated (e.g. "Lit") 133270a4118SMarissa Garza 134270a4118SMarissa Garza Run Key U Redfish Power ${pre_req_state} \ stack_mode=skip \ quiet=1 135270a4118SMarissa Garza Redfish.Login 136270a4118SMarissa Garza 137270a4118SMarissa Garza # Put both power supply LEDs On/Off to check all units are asserted 138270a4118SMarissa Garza Redfish.Put ${LED_PHYSICAL_PS0_URI}attr/State body={"data":${asserted}} 139270a4118SMarissa Garza Redfish.Put ${LED_PHYSICAL_PS1_URI}attr/State body={"data":${asserted}} 140270a4118SMarissa Garza 141270a4118SMarissa Garza # Example output: 142270a4118SMarissa Garza # power_supplies: 143270a4118SMarissa Garza # [0]: 144270a4118SMarissa Garza # [MemberId]: powersupply0 145270a4118SMarissa Garza # [IndicatorLED]: Lit 146270a4118SMarissa Garza # [Status]: 147270a4118SMarissa Garza # [Health]: OK 148270a4118SMarissa Garza # [State]: Enabled 149270a4118SMarissa Garza # [1]: 150270a4118SMarissa Garza # [MemberId]: powersupply1 151270a4118SMarissa Garza # [IndicatorLED]: Lit 152270a4118SMarissa Garza # [Status]: 153270a4118SMarissa Garza # [Health]: OK 154270a4118SMarissa Garza # [State]: Enabled 155270a4118SMarissa Garza 156270a4118SMarissa Garza Verify Indicator LEDs ${expected_indicator_led} 157270a4118SMarissa Garza 158270a4118SMarissa Garza 159270a4118SMarissa GarzaVerify Indicator LEDs 160270a4118SMarissa Garza [Documentation] Verify the LEDs on the power supply units are set according to caller's expectation. 161270a4118SMarissa Garza [Arguments] ${expected_indicator_led} 162270a4118SMarissa Garza 163270a4118SMarissa Garza # Description of Arguments(s): 164270a4118SMarissa Garza # expected_indicator_led The expected value of the IndicatorLED attribute for all the 165270a4118SMarissa Garza # LEDs after the lamp test is initiated (e.g. "Blinking") 166270a4118SMarissa Garza 167270a4118SMarissa Garza ${power_supplies}= Redfish.Get Attribute ${REDFISH_CHASSIS_POWER_URI} PowerSupplies 168270a4118SMarissa Garza Rprint Vars power_supplies 169270a4118SMarissa Garza FOR ${power_supply_leds} IN @{power_supplies} 170396083b7SGeorge Keishing Valid Value power_supply_leds['IndicatorLED'] ['${expected_indicator_led}'] 171270a4118SMarissa Garza END 172270a4118SMarissa Garza 173270a4118SMarissa Garza 1743fc34054SMarissa GarzaSet and Verify Fan LED Indicators 1753fc34054SMarissa Garza [Documentation] Verify the indicator LED for the fans are asserted. 1763fc34054SMarissa Garza [Arguments] ${pre_req_state} ${asserted} ${expected_indicator_led} 1773fc34054SMarissa Garza 1783fc34054SMarissa Garza # Description of Arguments(s): 1793fc34054SMarissa Garza # pre_req_state The pre-requisite state of the host to perform the test (e.g. "On") 180e4d41420SGeorge Keishing # asserted The assert property that sets the value 181e4d41420SGeorge Keishing # (e.g. "xyz.openbmc_project.Led.Physical.Action.On") 182e4d41420SGeorge Keishing # expected_indicator_led The expected value of the IndicatorLED attribute for all the fans 183e4d41420SGeorge Keishing # are initiated (e.g. "Lit") 1843fc34054SMarissa Garza 1853fc34054SMarissa Garza Run Key U Redfish Power ${pre_req_state} \ stack_mode=skip \ quiet=1 1863fc34054SMarissa Garza Redfish.Login 1873fc34054SMarissa Garza 1883fc34054SMarissa Garza # Put all the fan LEDs On/Off to check all are asserted 1893fc34054SMarissa Garza Redfish.Put ${LED_PHYSICAL_FAN0_URI}attr/State body={"data":${asserted}} 1903fc34054SMarissa Garza Redfish.Put ${LED_PHYSICAL_FAN2_URI}attr/State body={"data":${asserted}} 1913fc34054SMarissa Garza Redfish.Put ${LED_PHYSICAL_FAN3_URI}attr/State body={"data":${asserted}} 1923fc34054SMarissa Garza 1933fc34054SMarissa Garza # Example output: 1943fc34054SMarissa Garza # fans: 1953fc34054SMarissa Garza # [0]: 1963fc34054SMarissa Garza # [@odata.id]: /redfish/v1/Chassis/chassis/Thermal#/Fans/0 1973fc34054SMarissa Garza # [@odata.type]: #Thermal.v1_3_0.Fan 1983fc34054SMarissa Garza # [IndicatorLED]: Lit 1993fc34054SMarissa Garza # [MemberId]: fan0_0 2003fc34054SMarissa Garza # [Name]: fan0 0 2013fc34054SMarissa Garza # [Status]: 2023fc34054SMarissa Garza # [Health]: OK 2033fc34054SMarissa Garza # [State]: Enabled 2043fc34054SMarissa Garza 2053fc34054SMarissa Garza ${fans}= Redfish.Get Attribute ${REDFISH_CHASSIS_THERMAL_URI} Fans 2063fc34054SMarissa Garza Rprint Vars fans 2073fc34054SMarissa Garza FOR ${fan_leds} IN @{fans} 208396083b7SGeorge Keishing Valid Value fan_leds['IndicatorLED'] ['${expected_indicator_led}'] 2093fc34054SMarissa Garza END 2103fc34054SMarissa Garza 2113fc34054SMarissa Garza 212270a4118SMarissa GarzaSuite Teardown Execution 213270a4118SMarissa Garza [Documentation] Do the post suite teardown. 214270a4118SMarissa Garza 215270a4118SMarissa Garza Redfish.Logout 216270a4118SMarissa Garza 217270a4118SMarissa Garza 218270a4118SMarissa GarzaSuite Setup Execution 219270a4118SMarissa Garza [Documentation] Do test case setup tasks. 220270a4118SMarissa Garza 221270a4118SMarissa Garza Printn 222270a4118SMarissa Garza Redfish.Login 223270a4118SMarissa Garza 224270a4118SMarissa Garza 225270a4118SMarissa GarzaTest Teardown Execution 226270a4118SMarissa Garza [Documentation] Do the post test teardown. 227270a4118SMarissa Garza 228270a4118SMarissa Garza FFDC On Test Case Fail 2292643e59aSAlagiridhilipank 2302643e59aSAlagiridhilipank 2312643e59aSAlagiridhilipankSet Suite LED Indicator Initial Value 2322643e59aSAlagiridhilipank [Documentation] set suite For LED Initial value. 2332643e59aSAlagiridhilipank 234*c32434a3SYi Hu ${value}= Redfish.Get Attribute /redfish/v1/Systems/${SYSTEM_ID} LocationIndicatorActive 2352643e59aSAlagiridhilipank Set Suite Variable ${value} 2362643e59aSAlagiridhilipank 2372643e59aSAlagiridhilipank IF ${value} == False 2382643e59aSAlagiridhilipank Set Suite Variable ${set_value} ${True} 2392643e59aSAlagiridhilipank ELSE 2402643e59aSAlagiridhilipank Set Suite Variable ${set_value} ${False} 2412643e59aSAlagiridhilipank END 2422643e59aSAlagiridhilipank 2432643e59aSAlagiridhilipank 2442643e59aSAlagiridhilipankSet And Verify LED Location Indicator Active 2452643e59aSAlagiridhilipank [Documentation] Set And Verify LED Location Indicator State. 2462643e59aSAlagiridhilipank [Arguments] ${set_value} 2472643e59aSAlagiridhilipank 2482643e59aSAlagiridhilipank ${payload}= Create Dictionary LocationIndicatorActive=${set_value} 249*c32434a3SYi Hu Redfish.Patch /redfish/v1/Systems/${SYSTEM_ID} body=&{payload} 2502643e59aSAlagiridhilipank ... valid_status_codes=[${HTTP_NO_CONTENT}] 2512643e59aSAlagiridhilipank 252*c32434a3SYi Hu ${value}= Redfish.Get Attribute /redfish/v1/Systems/${SYSTEM_ID} LocationIndicatorActive 2532643e59aSAlagiridhilipank 2542643e59aSAlagiridhilipank Should Be Equal As Strings ${value} ${set_value} 2552643e59aSAlagiridhilipank 2562643e59aSAlagiridhilipank 257c63bfe64SGeorge KeishingSet Initial Value 2582643e59aSAlagiridhilipank [Documentation] setting back Initial value. 2592643e59aSAlagiridhilipank [Arguments] ${value} 2602643e59aSAlagiridhilipank 2612643e59aSAlagiridhilipank ${payload}= Create Dictionary LocationIndicatorActive=${value} 262*c32434a3SYi Hu Redfish.Patch /redfish/v1/Systems/${SYSTEM_ID} body=&{payload} 2632643e59aSAlagiridhilipank ... valid_status_codes=[${HTTP_NO_CONTENT}] 2642643e59aSAlagiridhilipank 265*c32434a3SYi Hu ${intial_value}= Redfish.Get Attribute /redfish/v1/Systems/${SYSTEM_ID} LocationIndicatorActive 2662643e59aSAlagiridhilipank Should Be Equal As Strings ${intial_value} ${value} 267