blob: c4fd6e76346b9beb524b04fbcfdf0771e6b88bb9 [file] [log] [blame]
George Keishingc5fab992019-02-02 08:50:37 -06001*** Settings ***
2Resource ../../lib/resource.txt
3Resource ../../lib/bmc_redfish_resource.robot
4
5*** Test Cases ***
6
7Verify Update Service Enabled
8 [Documentation] Verify "ServiceEnabled" is enabled.
9 [Tags] Verify_Update_Service_Enabled
10
11 # Example:
12 # "HttpPushUri": "/redfish/v1/UpdateService",
13 # "Id": "UpdateService",
14 # "Name": "Update Service",
15 # "ServiceEnabled": true
16
17 redfish.Login
18 ${resp}= redfish.Get /redfish/v1/UpdateService
19 Should Be Equal As Strings ${resp.status} ${HTTP_OK}
20 Should Be Equal As Strings ${resp.dict["ServiceEnabled"]} ${True}
21 redfish.Logout
22
23
24Verify Software Inventory Collection
25 [Documentation] Verify software inventory collection member and object entries.
26 [Tags] Verify_Software_Inventory_Collection
27
28 # Example:
29 # {
30 # "@odata.type": "#SoftwareInventoryCollection.SoftwareInventoryCollection",
31 # "Members": [
32 # {
33 # "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/a3522998"
34 # },
35 # {
36 # "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/a7c79f71"
37 # },
38 # {
39 # "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/ace821ef"
40 # }
41 # ],
42 # "Members@odata.count": 3,
43 # "Name": "Software Inventory Collection"
44 # }
45
46 redfish.Login
47 ${resp}= redfish.Get /redfish/v1/UpdateService/FirmwareInventory
48 Should Be Equal As Strings ${resp.status} ${HTTP_OK}
49
50 Should Be True ${resp.dict["Members@odata.count"]} >= ${1}
51 Length Should Be ${resp.dict["Members"]} ${resp.dict["Members@odata.count"]}
52 redfish.Logout
53
54
55Software Inventory Status Check
56 [Documentation] Get firmware inventory entries and do health check status.
57 [Tags] Software_Inventory-Status_Check
58
59 redfish.Login
60 ${resp}= redfish.Get /redfish/v1/UpdateService/FirmwareInventory
61 Should Be Equal As Strings ${resp.status} ${HTTP_OK}
62
63 # Entries "Members@odata.count": 3,
64 # {'@odata.id': '/redfish/v1/UpdateService/FirmwareInventory/a3522998'}
65 # {'@odata.id': '/redfish/v1/UpdateService/FirmwareInventory/a7c79f71'}
66 # {'@odata.id': '/redfish/v1/UpdateService/FirmwareInventory/ace821ef'}
67
68 :FOR ${entry} IN RANGE 0 ${resp.dict["Members@odata.count"]}
69 \ ${resp_resource}= redfish.Get ${resp.dict["Members"][${entry}]["@odata.id"]}
70 \ Should Be Equal As Strings ${resp_resource.status} ${HTTP_OK}
71 # Example:
72 # "Status": {
73 # "Health": "OK",
74 # "HealthRollup": "OK",
75 # "State": "Enabled"
76 # },
77 \ Should Be Equal As Strings ${resp_resource.dict["Status"]["Health"]} OK
78 \ Should Be Equal As Strings ${resp_resource.dict["Status"]["HealthRollup"]} OK
79 \ Should Be Equal As Strings ${resp_resource.dict["Status"]["State"]} Enabled