PLDM: Automate Test Scenarios for pldm commands
- Verify GetPDR
- Verify SetStateEffecterStates
- Verify GetTID
- Verify GetBIOSTable For StringTable
- Verify GetFruRecordTableMetadata
Note: Ouput for GetBIOSTable type stringtable is dynamic
will submit the verification part in the next commit.
Change-Id: I422c2df4485ac25d6ff4183bd51b5ddc6c3bf3cc
Signed-off-by: Sridevi Ramesh <sridevra@in.ibm.com>
Signed-off-by: George Keishing <gkeishin@in.ibm.com>
diff --git a/pldm/test_pldm_platform.robot b/pldm/test_pldm_platform.robot
new file mode 100644
index 0000000..c85b847
--- /dev/null
+++ b/pldm/test_pldm_platform.robot
@@ -0,0 +1,83 @@
+*** Settings ***
+
+Documentation Module to test PLDM platform commands.
+
+Library ../lib/pldm_utils.py
+Variables ../data/pldm_variables.py
+Resource ../lib/openbmc_ffdc.robot
+
+Test Setup Printn
+Test Teardown FFDC On Test Case Fail
+
+*** Test Cases ***
+
+Verify GetPDR
+ [Documentation] Verify GetPDR (Platform Descpritor Record) response message.
+ [Tags] Verify_GetPDR
+ [Template] Verify GetPDR For Record Handle
+
+ # RecordHandle
+ '0'
+ '1'
+ '2'
+
+
+Verify SetStateEffecterStates
+ [Documentation] Verify set state effecter states response message.
+ [Tags] Verify_SetStateEffecterStates
+ [Template] Verify SetStateEffecterStates For Effecter States
+
+ # EffecterStates (effecterID requestSet effecterState)
+ '1 1 1'
+ '1 1 2'
+
+*** Keywords ***
+
+Verify GetPDR For Record Handle
+ [Documentation] Verify GetPDR (Platform Descpritor Record) for given input record handle.
+ [Arguments] ${record_handle}
+
+ # Description of argument(s):
+ # ${record_handle} Record handle (e.g. '1').
+
+ # pldm_output:
+ # [responseCount]: 29
+ # [recordHandle]: 1
+ # [PDRHeaderVersion]: 1
+ # [PDRType]: 11
+ # [recordChangeNumber]: 0
+ # [dataLength]: 19
+ # [PLDMTerminusHandle]: 0
+ # [effecterID]: 1
+ # [entityType]: 33
+ # [entityInstanceNumber]: 0
+ # [containerID]: 0
+ # [effecterSemanticID]: 0
+ # [effecterInit]: 0
+ # [effecterDescriptionPDR]: false
+ # [compositeEffecterCount]: 1
+ # [stateSetID]: 196
+ # [possibleStatesSize]: 1
+ # [possibleStates]: 6
+
+ ${pldm_cmd}= Evaluate $CMD_GETPDR % ${record_handle}
+ ${pldm_output}= Pldmtool ${pldm_cmd}
+ Rprint Vars pldm_output
+ Valid Dict pldm_output valid_values=${RESPONSE_DICT_GETPDR}
+
+
+Verify SetStateEffecterStates For Effecter States
+ [Documentation] Verify set state effecter states for given input effecter states.
+ [Arguments] ${effecter_states}
+
+ # Description of argument(s):
+ # ${effecter_states} (effecterID requestSet effecterState).
+ # e.g. '1 1 1'.
+
+ # Example output:
+ # SetStateEffecterStates ]: SUCCESS
+
+ ${pldm_cmd}= Evaluate $CMD_SETSTATEEFFECTERSTATES % ${effecter_states}
+ ${pldm_output}= Pldmtool ${pldm_cmd}
+ Rprint Vars pldm_output
+ Valid Value pldm_output['setstateeffecterstates'] ['SUCCESS']