quarchpy.disk_test package¶
Submodules¶
quarchpy.disk_test.AbsDiskFinder module¶
quarchpy.disk_test.DiskTargetSelection module¶
This contains useful functions to help with disk target selection
Ensure installation of wmi and pywin32
########### VERSION HISTORY ###########
13/08/2018 - Andy Norrie - First version, based on initial work from Pedro Leao
-
quarchpy.disk_test.DiskTargetSelection.
getDiskTargetSelection
(purpose='iometer')¶
quarchpy.disk_test.UserTestExample module¶
quarchpy.disk_test.driveTestConfig module¶
This file contains global setup variables and similar, required for use across multiple modules
########### VERSION HISTORY ###########
03/01/2019 - Andy Norrie - First Version
########### INSTRUCTIONS ###########
N/A
-
quarchpy.disk_test.driveTestConfig.
logDebugMessagesOnTerminal
= True¶ Settings for current GUI
quarchpy.disk_test.driveTestCore module¶
This file contains the core functions for the drive test suite. Functions are placed here for the core setup functions called during the init stage of a test (or CSV parsed test set)
########### VERSION HISTORY ###########
03/01/2019 - Andy Norrie - First Version
########### INSTRUCTIONS ###########
N/A
-
quarchpy.disk_test.driveTestCore.
DiskStatusCheck
(driveId, expectedState, check_lanes=True, mapping_mode=None)¶
-
class
quarchpy.disk_test.driveTestCore.
QuarchComplianceSuite
(port_number=9742)¶ Bases:
object
-
activate_remote_server
()¶
-
attempt_restart
(reason=None)¶
-
bind_socket_tls
()¶
-
commandParser
(data)¶
-
compile_test
(sub_elem)¶
-
parse_request
(xml_tree)¶
-
setup_mdns_server
()¶
-
show_server_Status
(status, action)¶
-
-
quarchpy.disk_test.driveTestCore.
checkDriveState
(driveObject, deviceState, waitTime)¶
-
quarchpy.disk_test.driveTestCore.
check_compatibility
()¶
-
quarchpy.disk_test.driveTestCore.
check_programs_status
()¶
-
quarchpy.disk_test.driveTestCore.
check_qis_open
(qps_instance, timeout=5000)¶
-
quarchpy.disk_test.driveTestCore.
check_qps_open
(timeout=5000)¶
-
quarchpy.disk_test.driveTestCore.
chooseQuarchModule
(module_name, module_type=None, ip_address_lookup=None, scan_dictionary=None)¶
-
quarchpy.disk_test.driveTestCore.
chooseQuarchModuleQPS
(moduleName, myQps=None)¶
-
quarchpy.disk_test.driveTestCore.
disable_quickedit
()¶ Enable or disable quick edit mode to prevent system hangs, sometimes when using remote desktop Param (Enabled) enabled = 1(default), enable quick edit mode in python console enabled = 0, disable quick edit mode in python console
-
quarchpy.disk_test.driveTestCore.
executeAndCheckCommand
(myDevice, command)¶
-
quarchpy.disk_test.driveTestCore.
getLocalIpAddress
(first=True)¶
-
quarchpy.disk_test.driveTestCore.
get_module_from_choice
(connection, report_dict, return_val, is_qps=False)¶
-
quarchpy.disk_test.driveTestCore.
get_quarch_modules_qps
()¶
-
quarchpy.disk_test.driveTestCore.
is_tool
(name)¶ Check whether name is on PATH.
-
quarchpy.disk_test.driveTestCore.
main
(argstring)¶
-
quarchpy.disk_test.driveTestCore.
printProgressBar
(iteration, total)¶
-
quarchpy.disk_test.driveTestCore.
printToBackend
(text='')¶
-
quarchpy.disk_test.driveTestCore.
resetTestResources
()¶
-
quarchpy.disk_test.driveTestCore.
sendMsgToGUI
(toSend, timeToWait=5)¶
-
quarchpy.disk_test.driveTestCore.
setRunUntilFirstTestFailure
()¶
-
quarchpy.disk_test.driveTestCore.
setUpLogging
(log_level)¶
-
quarchpy.disk_test.driveTestCore.
specifyQuarchModule
(moduleName, interFaceType='PY', powerOnDevice=True, return_val=False, module_type='all', report_dict=[])¶
-
quarchpy.disk_test.driveTestCore.
update_progress_bars
(completion_value, is_document_mode)¶
quarchpy.disk_test.dtsComms module¶
-
class
quarchpy.disk_test.dtsComms.
DTSCommms
¶ Bases:
object
-
add_report_item
(dictionary, tree_tag, output_mode=None)¶
-
add_xml_drive
(device, tree_tag)¶
-
add_xml_quarch_module
(dict_key, dict_value, tree_tag, output_mode=None)¶
-
comms_send
(toSend, timeToWait=5)¶
-
create_request_function
(function_call, function_value=None, requires_response=True)¶
-
create_request_gui
(title, description, window_type, window_mode='PY', dict_of_modules=None, dict_of_drives=None, report_dict=None)¶
-
create_request_log
(logTime, messageType, messageText, messageSource, messageData=None, test_result=None, uId='', group=None, sub_group=None)¶
-
create_request_poll
(poll_type=None)¶
-
create_request_root
(root_tag, request_type, response_required=True)¶
-
create_request_status
(number_of_test_points=None, add_test_points=None, completion_value=None)¶
-
create_request_variable
(custom_variable_list, root_tag=None)¶
-
create_response
(function_complete=False, function_type=None)¶
-
getReturnPacket
(socket, message_sent='')¶
-
isVersionCompat
(version_number)¶
-
notifyTestLogEventXml
(tree_tag, unique_id, timeStamp, logType, logText, logSource, test_result=None, log_details=None, group=None, sub_group=None)¶
-
parse_response
(xml_tree, original_data)¶
-
processTimeoutAndResult
(socket, timeToWait, message_sent='')¶
-
sendMsgToGUI
(to_send, timeToWait=5)¶
-
sendMsgToGUIwithResponse
(to_send, timeToWait=5)¶
-
send_item_to_java
(s, to_send)¶
-
send_start_timeout
()¶
-
send_stop_test
(reason='')¶
-
send_stop_timeout
()¶
-
quarchpy.disk_test.dtsGlobals module¶
-
class
quarchpy.disk_test.dtsGlobals.
dtsGlobals
¶ Bases:
object
-
GUI_TCP_IP
= '127.0.0.1'¶
-
QCSVersionValid
= False¶
-
choiceResponse
= None¶
-
continueTest
= True¶
-
guiAddress
= 'localhost'¶
-
guiPort
= 9921¶
-
minQCSVersion
= '1.07'¶
-
qcs_dir
= None¶
-
runUntilFirstFailure
= False¶
-
send_to_gui
= True¶
-
validVersion
= True¶
-
quarchpy.disk_test.hostInformation module¶
Implements a cross platform system for scanning and querying system resources.
########### VERSION HISTORY ###########
06/05/2019 - Andy Norrie - First version
-
class
quarchpy.disk_test.hostInformation.
HostInformation
¶ Bases:
object
-
display_drives
()¶ Function used only in the Quarchpy.run file Used to display all found drives on the system to current terminal output
- Returns
N/A
-
get_wrapped_drive_from_choice
(selection)¶ Returns DriveWrapper object based on identifying string passed in parameter
- Parameters
selection – STR # selection passed is the identifier for the drive. # Smartctl : /dev/sda # lspci : 04:00.0 # WMIC : # LSSCSI :
- Returns
DriveWrapper if device was found, else None
-
internalResults
= {}¶
-
is_wrapped_device_present
(wrapped_device)¶
-
return_wrapped_drive_link
(wrapped_drive)¶ Finds drive passed and returns it’s current link speed LSPCI devices only
- Parameters
wrapped_drive – DriveWrapper
- Returns
Link speed value if found else “”
-
return_wrapped_drive_width
(wrapped_drive)¶ Find drive passed and return it’s current reported lane width LSPCI devices only
- Parameters
wrapped_drive – DriveWrapper
- Returns
Lane width if found else “”
-
return_wrapped_drives
(drive_type=None)¶ Returns a list of all drives found on the system The drives are all contained in “DriveWrapper” objects
- Parameters
drive_type –
- STRCan be used to specify the type of drive.
Leave as None will return all
Accepted Values : [ ‘lspci’, ‘*’, ‘smart’ ]
- Returns
List : DriveWrapper objects
-
store_initial_drive_stats
(drive, mapping_mode=False)¶
-
verify_wrapped_drive_link
(wrapped_drive, expected_link=None)¶ find drive passed and returns boolean if Link speed is same as expected value passed LSPCI devices only
- Parameters
wrapped_drive – DriveWrapper
expected_link – Expected speed (e.g ‘16 GT/s’)
- Returns
True if maintained else False
-
verify_wrapped_drive_width
(wrapped_drive, expected_width=None)¶ find drive passed and returns boolean if lane width is same as expected value passed LSPCI devices only
- Parameters
wrapped_drive – DriveWrapper
expected_width – Expected width (e.g ‘x2’)
- Returns
True if maintained else False
-
quarchpy.disk_test.hotPlugTest module¶
quarchpy.disk_test.iometerDiskFinder module¶
quarchpy.disk_test.lspci module¶
Implements basic control over lspci utilities, so that we can identify and check the status of PCIe devices on the host system
-
class
quarchpy.disk_test.lspci.
LinuxLSPCI
¶ Bases:
quarchpy.disk_test.lspci.abstractLSPCI
-
getPcieDeviceDetailedInfo
(deviceInfo=None, devicesToScan='all')¶
-
getPcieDeviceInfo
()¶
-
getPcieDeviceList
()¶
-
getPcieDevices
(mappingMode, filterDrives=False)¶
-
getPcieLinkStatus
(deviceStr, mappingMode)¶
-
is_admin_mode
()¶
-
sortList
(err, out)¶
-
-
class
quarchpy.disk_test.lspci.
WindowsLSPCI
¶ Bases:
quarchpy.disk_test.lspci.abstractLSPCI
-
getPcieDeviceDetailedInfo
(deviceInfo=None, devicesToScan='all')¶
-
getPcieDeviceInfo
()¶
-
getPcieDeviceList
()¶
-
getPcieDevices
(mappingMode, filterDrives=False)¶
-
getPcieLinkStatus
(deviceStr, mappingMode)¶
-
is_admin_mode
()¶
-
quarchpy.disk_test.powerTest module¶
quarchpy.disk_test.sasFuncs module¶
Implements basic SAS information parsing, so that we can identify and check the status of SAS/SATA devices on the host
-
class
quarchpy.disk_test.sasFuncs.
LinuxSAS
¶ Bases:
quarchpy.disk_test.sasFuncs.abstractSASDet
-
add_device_types
(device_list)¶
-
getDictKey
(iteratorValue)¶
-
getSasDeviceList
()¶
-
is_admin_mode
()¶
-
return_device_det_cmd
()¶
-
sortList
(err, out)¶
-
wrap_sas_devices
()¶
-