blob: acee981d8f1152f2d5078f8e103d3a02478d7224 [file] [log] [blame]
*** Settings ***
Documentation This testsuite is for testing inventory
Suite Teardown Delete All Sessions
Resource ../lib/rest_client.robot
Resource ../lib/utils.robot
Resource ../lib/state_manager.robot
Resource ../lib/openbmc_ffdc.robot
Library ../lib/utilities.py
Library String
Library Collections
Variables ../data/variables.py
Suite setup Setup The Suite
Test Teardown FFDC On Test Case Fail
Force Tags chassisboot inventory
*** Test Cases ***
Minimal CPU Inventory
[Tags] Minimal_CPU_Inventory
${count}= Get Total Present cpu
Should Be True ${count}>${0}
Minimal DIMM Inventory
[Tags] Minimal DIMM Inventory
${count}= Get Total Present dimm
Should Be True ${count}>=${2}
Minimal Core Inventory
[Tags] Minimal_Core_Inventory
${count}= Get Total Present core
Should Be True ${count}>${0}
Minimal Memory Buffer Inventory
[Tags] Minimal_Memory_Buffer_Inventory
${count}= Get Total Present membuf
Should Be True ${count}>${0}
Minimal Fan Inventory
[Tags] Minimal_Fan_Inventory
${count}= Get Total Present fan
Should Be True ${count}>${2}
Minimal Main Planar Inventory
[Tags] Minimal_Main_Planar_Inventory
${count}= Get Total Present motherboard
Should Be True ${count}>${0}
Minimal System Inventory
[Tags] Minimal_System_Inventory
${count}= Get Total Present system
Should Be True ${count}>${0}
Verify CPU VPD Properties
[Tags] Verify_CPU_VPD_Properties
Verify Properties CPU
Verify DIMM VPD Properties
[Tags] Verify_DIMM_VPD_Properties
Verify Properties DIMM
Verify Memory Buffer VPD Properties
[Tags] Verify_Memory_Buffer_VPD_Properties
Verify Properties MEMORY_BUFFER
Verify Fan VPD Properties
[Tags] Verify_Fan_VPD_Properties
Verify Properties FAN
Verify System VPD Properties
[Tags] Verify_System_VPD_Properties
Verify Properties SYSTEM
*** Keywords ***
Setup The Suite
${host_state}= Get Host State
Run Keyword If '${host_state}' == 'Off' Initiate Host Boot
${resp}= Read Properties ${INVENTORY_URI}enumerate
Set Suite Variable ${SYSTEM_INFO} ${resp}
Log Dictionary ${resp}
Get Total Present
[Arguments] ${type}
${l}= Create List []
${resp}= Get Dictionary Keys ${SYSTEM_INFO}
${list}= Get Matches ${resp} regexp=^.*[0-9a-z_].${type}[0-9]*$
: FOR ${element} IN @{list}
\ Append To List ${l} ${SYSTEM_INFO['${element}']['present']}
${sum}= Get Count ${l} True
[Return] ${sum}
Verify Properties
[Arguments] ${type}
${list}= Get VPD Inventory List ${OPENBMC_MODEL} ${type}
: FOR ${element} IN @{list}
\ ${d}= Get From Dictionary ${SYSTEM_INFO} ${element}
\ Run Keyword If ${d['present']} == True Verify Present Properties ${d} ${type}
Verify Present Properties
[Arguments] ${d} ${type}
${keys}= Get Dictionary Keys ${d}
Log List ${keys}
Log List ${INVENTORY_ITEMS['${type}']}
Lists Should Be Equal ${INVENTORY_ITEMS['${type}']} ${keys}