def test_real_stor_fan_module_actuator(agrs): check_sspl_ll_is_running() instance_id = "4" resource_type = "enclosure:fru:fan" send_enclosure_request("ENCL:%s" % resource_type, instance_id) ingressMsg = get_fru_response(resource_type, instance_id) fan_module_actuator_msg = ingressMsg.get("actuator_response_type") assert (fan_module_actuator_msg is not None) assert (fan_module_actuator_msg.get("alert_type") is not None) assert (fan_module_actuator_msg.get("alert_id") is not None) assert (fan_module_actuator_msg.get("severity") is not None) assert (fan_module_actuator_msg.get("host_id") is not None) assert (fan_module_actuator_msg.get("info") is not None) fan_module_info = fan_module_actuator_msg.get("info") assert (fan_module_info.get("site_id") is not None) assert (fan_module_info.get("node_id") is not None) assert (fan_module_info.get("cluster_id") is not None) assert (fan_module_info.get("rack_id") is not None) assert (fan_module_info.get("resource_type") is not None) assert (fan_module_info.get("event_time") is not None) assert (fan_module_info.get("resource_id") is not None) fru_specific_info = fan_module_actuator_msg.get("specific_info", {}) resource_id = fan_module_info.get("resource_id") if resource_id == "*": verify_fan_module_specific_info(fru_specific_info) return if fru_specific_info: assert (fru_specific_info.get("durable_id") is not None) assert (fru_specific_info.get("status") is not None) assert (fru_specific_info.get("name") is not None) assert (fru_specific_info.get("enclosure_id") is not None) assert (fru_specific_info.get("health") is not None) assert (fru_specific_info.get("health_reason") is not None) assert (fru_specific_info.get("location") is not None) assert (fru_specific_info.get("health_recommendation") is not None) assert (fru_specific_info.get("position") is not None) fans = fan_module_actuator_msg.get("specific_info").get("fans", []) if fans: for fan in fans: assert (fan.get("durable_id") is not None) assert (fan.get("status") is not None) assert (fan.get("name") is not None) assert (fan.get("speed") is not None) assert (fan.get("locator_led") is not None) assert (fan.get("position") is not None) assert (fan.get("location") is not None) assert (fan.get("part_number") is not None) assert (fan.get("serial_number") is not None) assert (fan.get("fw_revision") is not None) assert (fan.get("hw_revision") is not None) assert (fan.get("health") is not None) assert (fan.get("health_reason") is not None) assert (fan.get("health_recommendation") is not None)
def test_real_stor_psu_actuator(agrs): instance_id = "*" resource_type = "enclosure:hw:psu" send_enclosure_request("ENCL:%s" % resource_type, instance_id) ingressMsg = get_fru_response(resource_type, instance_id) psu_actuator_msg = ingressMsg.get("actuator_response_type") assert (psu_actuator_msg is not None) assert (psu_actuator_msg.get("host_id") is not None) assert (psu_actuator_msg.get("alert_type") is not None) assert (psu_actuator_msg.get("severity") is not None) assert (psu_actuator_msg.get("alert_id") is not None) psu_info = psu_actuator_msg.get("info") assert (psu_info is not None) assert (psu_info.get("site_id") is not None) assert (psu_info.get("cluster_id") is not None) assert (psu_info.get("rack_id") is not None) assert (psu_info.get("node_id") is not None) assert (psu_info.get("resource_type") is not None) assert (psu_info.get("resource_id") is not None) assert (psu_info.get("event_time") is not None) psu_actuator_specific_info_array = psu_actuator_msg.get("specific_info") for psu_specific_info in psu_actuator_specific_info_array: assert (psu_specific_info is not None) assert (psu_specific_info.get("dctemp") is not None) assert (psu_specific_info.get("dc33v") is not None) assert (psu_specific_info.get("fru_shortname") is not None) assert (psu_specific_info.get("health_reason") is not None) assert (psu_specific_info.get("serial_number") is not None) assert (psu_specific_info.get("mfg_date") is not None) assert (psu_specific_info.get("dash_level") is not None) assert (psu_specific_info.get("dom_id") is not None) assert (psu_specific_info.get("dc5i") is not None) assert (psu_specific_info.get("enclosure_id") is not None) assert (psu_specific_info.get("position_numeric") is not None) assert (psu_specific_info.get("durable_id") is not None) assert (psu_specific_info.get("configuration_serialnumber") is not None) assert (psu_specific_info.get("health") is not None) assert (psu_specific_info.get("location") is not None) assert (psu_specific_info.get("dc5v") is not None) assert (psu_specific_info.get("status_numeric") is not None) assert (psu_specific_info.get("revision") is not None) assert (psu_specific_info.get("mfg_location") is not None) assert (psu_specific_info.get("dc12v") is not None) assert (psu_specific_info.get("vendor") is not None) assert (psu_specific_info.get("description") is not None) assert (psu_specific_info.get("mfg_date_numeric") is not None) assert (psu_specific_info.get("object_name") is not None) assert (psu_specific_info.get("part_number") is not None) assert (psu_specific_info.get("health_recommendation") is not None) assert (psu_specific_info.get("health_numeric") is not None) assert (psu_specific_info.get("dc12i") is not None) assert (psu_specific_info.get("name") is not None) assert (psu_specific_info.get("fw_revision") is not None) assert (psu_specific_info.get("position") is not None) assert (psu_specific_info.get("model") is not None) assert (psu_specific_info.get("mfg_vendor_id") is not None)
def test_real_stor_disk_actuator(agrs): instance_id = "*" resource_type = "enclosure:hw:disk" send_enclosure_request("ENCL:%s" % resource_type, instance_id) ingressMsg = get_fru_response(resource_type, instance_id) disk_actuator_msg = ingressMsg.get("actuator_response_type") assert (disk_actuator_msg is not None) assert (disk_actuator_msg.get("alert_type") is not None) assert (disk_actuator_msg.get("alert_id") is not None) assert (disk_actuator_msg.get("severity") is not None) assert (disk_actuator_msg.get("host_id") is not None) assert (disk_actuator_msg.get("info") is not None) disk_actuator_info = disk_actuator_msg.get("info") assert (disk_actuator_info.get("site_id") is not None) assert (disk_actuator_info.get("node_id") is not None) assert (disk_actuator_info.get("cluster_id") is not None) assert (disk_actuator_info.get("rack_id") is not None) assert (disk_actuator_info.get("resource_type") is not None) assert (disk_actuator_info.get("event_time") is not None) assert (disk_actuator_info.get("resource_id") is not None) disk_actuator_specific_infos = disk_actuator_msg.get("specific_info") for disk_actuator_specific_info in disk_actuator_specific_infos: assert (disk_actuator_specific_info is not None) assert (disk_actuator_specific_info.get("description") is not None) assert (disk_actuator_specific_info.get("slot") is not None) assert (disk_actuator_specific_info.get("status") is not None) assert (disk_actuator_specific_info.get("architecture") is not None) assert (disk_actuator_specific_info.get("serial_number") is not None) assert (disk_actuator_specific_info.get("size") is not None) assert (disk_actuator_specific_info.get("vendor") is not None) assert (disk_actuator_specific_info.get("model") is not None) assert (disk_actuator_specific_info.get("revision") is not None) assert (disk_actuator_specific_info.get("temperature") is not None) assert (disk_actuator_specific_info.get("LED_status".lower()) is not None) assert (disk_actuator_specific_info.get("locator_LED".lower()) is not None) assert (disk_actuator_specific_info.get("blink") is not None) assert (disk_actuator_specific_info.get("smart") is not None) assert (disk_actuator_specific_info.get("health") is not None) assert (disk_actuator_specific_info.get("health_reason") is not None) assert (disk_actuator_specific_info.get("health_recommendation") is not None) #assert(disk_actuator_specific_info.get("enclosure_family") is not None) assert (disk_actuator_specific_info.get("enclosure_id") is not None) assert (disk_actuator_specific_info.get("enclosure_wwn") is not None)
def test_real_stor_sideplane_module_actuator(agrs): check_sspl_ll_is_running() instance_id = "*" resource_type = "enclosure:hw:sideplane" send_enclosure_request("ENCL:%s" % resource_type, instance_id) ingressMsg = get_fru_response(resource_type, instance_id) sideplane_module_actuator_msg = ingressMsg.get("actuator_response_type") assert (sideplane_module_actuator_msg is not None) assert (sideplane_module_actuator_msg.get("alert_type") is not None) assert (sideplane_module_actuator_msg.get("alert_id") is not None) assert (sideplane_module_actuator_msg.get("severity") is not None) assert (sideplane_module_actuator_msg.get("host_id") is not None) assert (sideplane_module_actuator_msg.get("info") is not None) sideplane_module_info = sideplane_module_actuator_msg.get("info") assert (sideplane_module_info.get("site_id") is not None) assert (sideplane_module_info.get("node_id") is not None) assert (sideplane_module_info.get("cluster_id") is not None) assert (sideplane_module_info.get("rack_id") is not None) assert (sideplane_module_info.get("resource_type") is not None) assert (sideplane_module_info.get("event_time") is not None) assert (sideplane_module_info.get("resource_id") is not None) sideplane_specific_info = sideplane_module_actuator_msg.get( "specific_info", {}) resource_id = sideplane_module_info.get("resource_id") if resource_id == "*": verify_sideplane_module_specific_info(sideplane_specific_info) return if sideplane_specific_info: assert (sideplane_specific_info.get("object_name") is not None) assert (sideplane_specific_info.get("durable_id") is not None) assert (sideplane_specific_info.get("status") is not None) assert (sideplane_specific_info.get("name") is not None) assert (sideplane_specific_info.get("enclosure_id") is not None) assert (sideplane_specific_info.get("drawer_id") is not None) assert (sideplane_specific_info.get("dom_id") is not None) assert (sideplane_specific_info.get("path_id") is not None) assert (sideplane_specific_info.get("path_id_numeric") is not None) assert (sideplane_specific_info.get("location") is not None) assert (sideplane_specific_info.get("position") is not None) assert (sideplane_specific_info.get("position_numeric") is not None) assert (sideplane_specific_info.get("status_numeric") is not None) assert (sideplane_specific_info.get("extended_status") is not None) assert (sideplane_specific_info.get("health") is not None) assert (sideplane_specific_info.get("health_numeric") is not None) assert (sideplane_specific_info.get("health_reason") is not None) assert (sideplane_specific_info.get("health_recommendation") is not None) expanders = sideplane_module_actuator_msg.get("specific_info").get( "sideplanes", []) if expanders: for expander in expanders: assert (expander.get("object_name") is not None) assert (expander.get("durable_id") is not None) assert (expander.get("status") is not None) assert (expander.get("name") is not None) assert (expander.get("enclosure_id") is not None) assert (expander.get("drawer_id") is not None) assert (expander.get("dom_id") is not None) assert (expander.get("path_id") is not None) assert (expander.get("path_id_numeric") is not None) assert (expander.get("location") is not None) assert (expander.get("status_numeric") is not None) assert (expander.get("extended_status") is not None) assert (expander.get("fw_revision") is not None) assert (expander.get("health") is not None) assert (expander.get("health_numeric") is not None) assert (expander.get("health_reason") is not None) assert (expander.get("health_recommendation") is not None)
def test_real_stor_controller_actuator(agrs): instance_id = "*" resource_type = "enclosure:hw:controller" send_enclosure_request("ENCL:%s" % resource_type, instance_id) ingressMsg = get_fru_response(resource_type, instance_id) controller_actuator_msg = ingressMsg.get("actuator_response_type") assert(controller_actuator_msg is not None) assert(controller_actuator_msg.get("alert_type") is not None) assert(controller_actuator_msg.get("alert_id") is not None) assert(controller_actuator_msg.get("severity") is not None) assert(controller_actuator_msg.get("host_id") is not None) assert(controller_actuator_msg.get("info") is not None) assert(controller_actuator_msg.get("specific_info") is not None) info = controller_actuator_msg.get("info") assert(info.get("site_id") is not None) assert(info.get("node_id") is not None) assert(info.get("cluster_id") is not None) assert(info.get("rack_id") is not None) assert(info.get("resource_type") is not None) assert(info.get("event_time") is not None) assert(info.get("resource_id") is not None) specific_infos = controller_actuator_msg.get("specific_info") for specific_info in specific_infos: assert(specific_info.get("object_name") is not None) assert(specific_info.get("controller_id") is not None) assert(specific_info.get("serial_number") is not None) assert(specific_info.get("hardware_version") is not None) assert(specific_info.get("cpld_version") is not None) assert(specific_info.get("mac_address") is not None) assert(specific_info.get("node_wwn") is not None) assert(specific_info.get("ip_address") is not None) assert(specific_info.get("ip_subnet_mask") is not None) assert(specific_info.get("ip_gateway") is not None) assert(specific_info.get("disks") is not None) assert(specific_info.get("number_of_storage_pools") is not None) assert(specific_info.get("virtual_disks") is not None) assert(specific_info.get("host_ports") is not None) assert(specific_info.get("drive_channels") is not None) assert(specific_info.get("drive_bus_type") is not None) assert(specific_info.get("status") is not None) assert(specific_info.get("failed_over") is not None) assert(specific_info.get("fail_over_reason") is not None) assert(specific_info.get("vendor") is not None) assert(specific_info.get("model") is not None) assert(specific_info.get("platform_type") is not None) assert(specific_info.get("write_policy") is not None) assert(specific_info.get("description") is not None) assert(specific_info.get("part_number") is not None) assert(specific_info.get("revision") is not None) assert(specific_info.get("mfg_vendor_id") is not None) assert(specific_info.get("locator_led") is not None) assert(specific_info.get("health") is not None) assert(specific_info.get("health_reason") is not None) assert(specific_info.get("position") is not None) assert(specific_info.get("redundancy_mode") is not None) assert(specific_info.get("redundancy_status") is not None) assert(specific_info.get("compact_flash") is not None) assert(specific_info.get("network_parameters") is not None) assert(specific_info.get("expander_ports") is not None) assert(specific_info.get("expanders") is not None) assert(specific_info.get("port") is not None)