Chris Austen | b29d2e8 | 2016-06-07 12:25:35 -0500 | [diff] [blame] | 1 | *** Settings *** |
| 2 | Documentation This testsuite is for testing inventory |
| 3 | Suite Teardown Delete All Sessions |
| 4 | Resource ../lib/rest_client.robot |
| 5 | Resource ../lib/utils.robot |
George Keishing | d55a4be | 2016-08-26 03:28:17 -0500 | [diff] [blame^] | 6 | Resource ../lib/openbmc_ffdc.robot |
Chris Austen | b29d2e8 | 2016-06-07 12:25:35 -0500 | [diff] [blame] | 7 | Library ../lib/utilities.py |
| 8 | Library String |
| 9 | Library Collections |
George Keishing | d55a4be | 2016-08-26 03:28:17 -0500 | [diff] [blame^] | 10 | Test Teardown Log FFDC |
Chris Austen | b29d2e8 | 2016-06-07 12:25:35 -0500 | [diff] [blame] | 11 | |
| 12 | Variables ../data/variables.py |
| 13 | |
| 14 | |
| 15 | Suite setup setup the suite |
| 16 | |
causten | 147f575 | 2016-08-11 16:24:45 -0500 | [diff] [blame] | 17 | Force Tags chassisboot |
Chris Austen | b29d2e8 | 2016-06-07 12:25:35 -0500 | [diff] [blame] | 18 | |
| 19 | *** Test Cases *** |
| 20 | |
| 21 | minimal cpu inventory |
| 22 | ${count} = Get Total Present CPU |
| 23 | Should Be True ${count}>${0} |
| 24 | |
| 25 | minimal dimm inventory |
| 26 | ${count} = Get Total Present DIMM |
| 27 | Should Be True ${count}>=${2} |
| 28 | |
| 29 | minimal core inventory |
| 30 | ${count} = Get Total Present CORE |
| 31 | Should Be True ${count}>${0} |
| 32 | |
| 33 | minimal memory buffer inventory |
| 34 | ${count} = Get Total Present MEMORY_BUFFER |
| 35 | Should Be True ${count}>${0} |
| 36 | |
| 37 | minimal fan inventory |
| 38 | ${count} = Get Total Present FAN |
| 39 | Should Be True ${count}>${2} |
| 40 | |
| 41 | minimal main planar inventory |
| 42 | ${count} = Get Total Present MAIN_PLANAR |
| 43 | Should Be True ${count}>${0} |
| 44 | |
| 45 | minimal system inventory |
| 46 | ${count} = Get Total Present SYSTEM |
| 47 | Should Be True ${count}>${0} |
| 48 | |
| 49 | Verify CPU VPD Properties |
| 50 | Verify Properties CPU |
| 51 | |
| 52 | Verify DIMM VPD Properties |
| 53 | Verify Properties DIMM |
| 54 | |
| 55 | Verify Memory Buffer VPD Properties |
| 56 | Verify Properties MEMORY_BUFFER |
| 57 | |
| 58 | Verify Fan VPD Properties |
| 59 | Verify Properties FAN |
| 60 | |
| 61 | Verify System VPD Properties |
| 62 | Verify Properties SYSTEM |
| 63 | |
| 64 | |
| 65 | *** Keywords *** |
| 66 | |
| 67 | Setup The Suite |
root | 442f0ef | 2016-08-04 20:23:05 +0000 | [diff] [blame] | 68 | Initiate Power On |
Chris Austen | b29d2e8 | 2016-06-07 12:25:35 -0500 | [diff] [blame] | 69 | |
| 70 | @{ret} = Get Inventory List ${OPENBMC_MODEL} |
| 71 | Set Suite Variable @{sys_inv} @{ret} |
| 72 | ${resp} = Read Properties /org/openbmc/inventory/enumerate |
| 73 | Set Suite Variable ${SYSTEM_INFO} ${resp} |
| 74 | log Dictionary ${resp} |
| 75 | |
| 76 | Get Total Present |
| 77 | [arguments] ${type} |
| 78 | |
| 79 | ${l} = Create List [] |
| 80 | ${list} = Get Inventory Fru Type List ${OPENBMC_MODEL} ${type} |
| 81 | : FOR ${element} IN @{list} |
| 82 | \ Append To List ${l} ${SYSTEM_INFO['${element}']['present']} |
| 83 | |
| 84 | ${sum} = Get Count ${l} True |
| 85 | [return] ${sum} |
| 86 | |
| 87 | Verify Properties |
| 88 | [arguments] ${type} |
| 89 | |
| 90 | ${list} = Get VPD Inventory List ${OPENBMC_MODEL} ${type} |
| 91 | : FOR ${element} IN @{list} |
| 92 | \ ${d} = Get From Dictionary ${SYSTEM_INFO} ${element} |
| 93 | \ Run Keyword If ${d['present']} == True Verify Present Properties ${d} ${type} |
| 94 | |
| 95 | Verify Present Properties |
| 96 | [arguments] ${d} ${type} |
| 97 | ${keys} = Get Dictionary Keys ${d} |
| 98 | Log List ${keys} |
| 99 | Log List ${INVENTORY_ITEMS['${type}']} |
| 100 | Lists Should Be Equal ${INVENTORY_ITEMS['${type}']} ${keys} |