Update and fix test suite code logic

Changes:
   - Add code to dynamically detect the fans URL attributes
   - Fix FFDC option

Resolves   openbmc/openbmc-test-automation#2164

Change-Id: I2b2f74564c6e616d7c4daab173a160f77511f878
Signed-off-by: George Keishing <gkeishin@in.ibm.com>
diff --git a/openpower/check_vpd_and_hw_status.robot b/openpower/check_vpd_and_hw_status.robot
index a07aae4..5f3223a 100644
--- a/openpower/check_vpd_and_hw_status.robot
+++ b/openpower/check_vpd_and_hw_status.robot
@@ -24,7 +24,11 @@
     ${system_properties}=  Redfish_Utils.Get Properties  ${SYSTEM_BASE_URI}
     ${system_memory_info}=  Redfish_Utils.Enumerate Request  ${SYSTEM_BASE_URI}/Memory
     ${system_processors_info}=  Redfish_Utils.Enumerate Request  ${SYSTEM_BASE_URI}/Processors
-    ${system_fans_info}=  Redfish_Utils.Get Attribute  ${REDFISH_CHASSIS_THERMAL_URI}  Fans
+
+    # Python module:  get_endpoint_path_list(resource_path, end_point_prefix)
+    ${thermal_uri}=  redfish_utils.Get Endpoint Path List  ${REDFISH_CHASSIS_URI}  Thermal
+    ${system_fans_info}=  Redfish_Utils.Get Attribute  ${thermal_uri[0]}  Fans
+
     ${collected_values}=  gen_robot_print.Sprint Vars
     ...  system_properties  system_memory_info  system_processors_info  system_fans_info
     Log To Console  ${\n}${collected_values}${\n}
@@ -48,4 +52,4 @@
     [Documentation]  Do the post test teardown for redfish.
 
     Redfish.Logout
-    FFDC On Test Case Fail  clean_up=${FALSE}
+    FFDC On Test Case Fail