public class DEngineCommandProcessor extends EngineCommandProcessor
The SAFSTestRunner should expect to execute from Properties with the following settings:
Upon a valid and complete execution the SAFSTestRunner is expected to return:
Any command returning a REMOTERESULTINFO should format it in the exact manner documented in the SAFS Keyword Reference for that command. This processor will simply forward that info into the testRecordData used by the engine using this processor.
As specific commands require additional parameters they are sent as:
For these Engine Commands, this processor sets global SAFSVARS variables that allow a running test
to reference the statuscode and statusinfo resulting from the last engine command executed. See setStatusVars()
.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
COMMAND |
static java.lang.String |
COMMAND_GET_CURRENT_WINDOW
'getCurrentWindow'
|
static java.lang.String |
COMMAND_IS_ENABLED
'isEnabled'
|
protected SAFSRemoteControl |
control |
protected DTestRecordHelper |
droiddata
simple class cast of existing testRecordData
|
protected java.util.Properties |
props |
static java.lang.String |
STATUSCODE |
static java.lang.String |
STATUSINFO |
static java.lang.String |
TAG |
static java.lang.String |
VAR_PREFIX |
command, COMMAND_ENABLE_DOMAINS, COMMAND_GET_ACCESSIBLENAME, COMMAND_GET_CAPTION, COMMAND_GET_CHILD_COUNT, COMMAND_GET_CHILDREN, COMMAND_GET_CLASSINDEX, COMMAND_GET_CLASSNAME, COMMAND_GET_DOMAINNAME, COMMAND_GET_ID, COMMAND_GET_LEVEL, COMMAND_GET_MATCHING_CHILD_OBJECTS, COMMAND_GET_MATCHING_PARENT_OBJECT, COMMAND_GET_MATCHING_PATH_OBJECT, COMMAND_GET_NAME, COMMAND_GET_NONACCESSIBLENAME, COMMAND_GET_OBJECTRECOGNITION_ATSCREENCOORDS, COMMAND_GET_PROPERTY, COMMAND_GET_PROPERTY_NAMES, COMMAND_GET_STRING_DATA, COMMAND_GET_SUPER_CLASSNAMES, COMMAND_GET_TEXT, COMMAND_GET_TOPLEVEL_COUNT, COMMAND_GET_TOPLEVEL_WINDOWS, COMMAND_IS_MATCHING_PATH, COMMAND_IS_SHOWING, COMMAND_IS_TOPLEVEL_POPUP_CONTAINER, COMMAND_IS_VALID, COMMAND_SET_ACTIVE_WINDOW
breakpointsOn, CASE_INSENSITIVE_FLAG, CASEINSENSITIVE_FLAG, clearProxiesAlways, commandLineBreakpoint, customStr, customText, DEBUG_MESSAGE, debugStr, debugText, DEFAULT_CUSTOM_PROCESSOR_PACKAGE, DEFAULT_CUSTOM_PROCESSOR_SUBPACKAGE, DEFAULT_PROCESSOR_PACKAGE, FAILED_MESSAGE, FAILED_OK_MESSAGE, failedStr, failedText, FAILURE_DETAIL, GENERIC_MESSAGE, genericStr, genericText, LINE_FAILURE_4, log, myBreakpointsOn, otherStr, otherText, PARAM_SIZE_1, PARAM_SIZE_2, PARAM_SIZE_3, PARAM_SIZE_4, params, PASSED_MESSAGE, passedStr, passedText, PRE_TXT_SUCCESS_4, PRE_TXT_SUCCESS_5, processorConfigSet, processorMap, recordProcessed, RECTYPE_DRIVER_COMMAND, RECTYPE_DRIVER_COMMAND_F, RECTYPE_DRIVER_COMMAND_W, RECTYPE_TEST_STEP, RECTYPE_TEST_STEP_F, RECTYPE_TEST_STEP_W, RFSMCache, RFSMOnly, RFT_FIND_SEARCH_MODE_ALGORITHM, RFT_FIND_SEARCH_MODE_CACHE, SAFS_CLEARPROXIESALWAYS_ITEM, SAFS_COMMANDLINEBREAKPOINT_ITEM, SAFS_COMMANDLINEBREAKPOINT_VARIABLE, SAFS_PARAMS_FILE, SAFS_RESBUN_NAME, SAFS_SECSWAITFORCOMPONENT_ITEM, SAFS_SECSWAITFORCOMPONENT_VARIABLE, SAFS_SECSWAITFORWINDOW_ITEM, SAFS_SECSWAITFORWINDOW_VARIABLE, SAFS_TESTDOMAINS_ITEM, SAFS_TESTDOMAINS_VARIABLE, secsWaitForComponent, secsWaitForWindow, SENT_MSG_3, testDomains, testRecordData, testrecordStackable, TXT_FAILURE_1, TXT_FAILURE_2, TXT_FAILURE_3, TXT_FAILURE_4, TXT_FAILURE_5, TXT_SUCCESS_1, TXT_SUCCESS_2, TXT_SUCCESS_2a, TXT_SUCCESS_3, TXT_SUCCESS_3a, TXT_SUCCESS_4, TXT_SUCCESS_5, unexpectedAlertBehaviour, WARNING_MESSAGE, WARNING_OK_MESSAGE, warningStr, warningText
Constructor and Description |
---|
DEngineCommandProcessor() |
Modifier and Type | Method and Description |
---|---|
protected java.util.Collection |
interpretFields()
Calls the default processing of interpretFields and then prepares the
droiddata (testRecordData) with the initial KeywordProperties of:
|
protected void |
logGenericSuccess() |
protected void |
logGenericWarning() |
void |
process()
By default executes setRecordProcessed(false) if no chainedProcessor is present.
|
protected void |
resetStatusVars()
Reset the global SAFSVARS variables that store the most recent command results:
|
protected void |
setStatusVars()
Sets the global SAFSVARS variables to the values of the most recent (last) engine command
executed:
|
void |
setTestRecordData(TestRecordHelper data) |
_getObjectRecognitionAtScreenCoords, convertToDelimitedString, getEngineCommand, getGuiObjectVector, isSupportedRecordType, recognitionOfObjectAtPoint, setGuiObjectVector
activateBreakpoint, checkBreakpoints, checkMyBreakpoints, deduceBenchFile, deduceDiffFile, deduceProjectFile, deduceTestFile, delay, distributeConfigInformation, getAbsolutFileName, getAlternateParams, getAppMapItem, getChainedProcessor, getClassInstance, getClearProxiesAlways, getCustomProcClassNames, getCustomProcInstancePath, getLogUtilities, getParams, getProcClassNames, getProcInstance, getProcInstancePath, getRequiredField, getSecsWaitForComponent, getSecsWaitForWindow, getStandardErrorMessage, getTestRecordData, getUnexpectedAlertBehaviour, getVariable, hasChainedProcessor, initProcessorAndProcess, instanceProcessorAndProcess, isBreakpointsOn, isComponentFunctionRecord, isDriverCommandRecord, isEngineCommandRecord, isMyBreakpointsOn, isRecordProcessed, isRFSMCache, isRFSMOnly, issueActionFailure, issueActionOnXFailure, issueErrorPerformingAction, issueErrorPerformingActionOnX, issueErrorPerformingActionUsing, issueInputRecordFailure, issueInputRecordFailure, issuePassedSuccess, logFailureMessage, normalizeTestFileName, paramsFailedMsg, paramsFailedMsg, popTestRecord, processCustomProcessor, processSubclassProcessor, pushTestRecord, setAtEndOfProcess, setBreakpointsOn, setChainedProcessor, setClearProxiesAlways, setCommandLineBreakpoint, setCustomProcInstancePath, setLogUtilities, setMyBreakpointsOn, setParams, setProcInstance, setProcInstancePath, setRecordProcessed, setRFSMCache, setRFSMOnly, setSecsWaitForComponent, setSecsWaitForWindow, setTestDomains, setUnexpectedAlertBehaviour, setVariable, standardFailureMessage, substituteVariable, validateParamSize, validProcessorClassName
public static final java.lang.String TAG
public static final java.lang.String STATUSINFO
public static final java.lang.String STATUSCODE
public static final java.lang.String VAR_PREFIX
public static final java.lang.String COMMAND
public static final java.lang.String COMMAND_GET_CURRENT_WINDOW
public static final java.lang.String COMMAND_IS_ENABLED
protected DTestRecordHelper droiddata
protected java.util.Properties props
protected SAFSRemoteControl control
public DEngineCommandProcessor()
controller
- public void setTestRecordData(TestRecordHelper data)
setTestRecordData
in class Processor
protected java.util.Collection interpretFields() throws SAFSException
Also insures our control object is set to the current SAFSRemoteControl instance stored in droiddata.
interpretFields
in class EngineCommandProcessor
SAFSException
protected void logGenericSuccess()
protected void logGenericWarning()
protected void resetStatusVars()
StatusCodes.getStatusString(int)
protected void setStatusVars()
Which can be referenced in SAFS tests as normal SAFS variables:
These variables will retain these values until the execution of another engine command by this processor. So, they can be parsed and manipulated by Driver Commands and other processes until they are reset by another engine command.
StatusCodes.getStatusString(int)
public void process()
EngineCommandProcessor
By default executes setRecordProcessed(false) if no chainedProcessor is present.
process
in class EngineCommandProcessor
Copyright © SAS Institute. All Rights Reserved.