blob: da51e57cca7a14527edbc50b035caa13e2335f0c [file] [log] [blame]
George Keishing00ee05a2019-02-25 12:35:06 -06001*** Settings ***
2Documentation Test BMC using https://github.com/DMTF/Redfish-Service-Validator.
3... DMTF tool.
4
5Library OperatingSystem
George Keishing4a95aef2020-03-04 01:33:42 -06006Library ../../lib/gen_robot_print.py
George Keishing00ee05a2019-02-25 12:35:06 -06007Resource ../../lib/dmtf_tools_utils.robot
George Keishing4a95aef2020-03-04 01:33:42 -06008Resource ../../lib/bmc_redfish_resource.robot
9Resource ../../lib/bmc_redfish_utils.robot
George Keishing00ee05a2019-02-25 12:35:06 -060010
11*** Variables ***
12
13${DEFAULT_PYTHON} python3
14${rsv_dir_path} Redfish-Service-Validator
15${rsv_github_url} https://github.com/DMTF/Redfish-Service-Validator.git
George Keishingf189ff82021-08-10 23:32:15 -050016${cmd_str_master} ${DEFAULT_PYTHON} ${rsv_dir_path}${/}RedfishServiceValidator.py
17... --ip https://${OPENBMC_HOST}:${HTTPS_PORT} --authtype=Session -u ${OPENBMC_USERNAME}
18... -p ${OPENBMC_PASSWORD} --logdir ${EXECDIR}${/}logs${/} --debugging
George Keishing00ee05a2019-02-25 12:35:06 -060019
20*** Test Case ***
21
22Test BMC Redfish Using Redfish Service Validator
23 [Documentation] Check conformance with a Redfish service interface.
24 [Tags] Test_BMC_Redfish_Using_Redfish_Service_Validator
25
26 Download DMTF Tool ${rsv_dir_path} ${rsv_github_url}
27
George Keishingf189ff82021-08-10 23:32:15 -050028 ${output}= Run DMTF Tool ${rsv_dir_path} ${cmd_str_master}
George Keishing398d9e62019-02-28 05:41:33 -060029
30 Redfish Service Validator Result ${output}
George Keishing4a95aef2020-03-04 01:33:42 -060031
32
33Run Redfish Service Validator With Additional Roles
34 [Documentation] Check Redfish conformance using the Redfish Service Validator.
35 ... Run the validator as additional non-admin user roles.
36 [Tags] Run_Redfish_Service_Validator_With_Additional_Roles
37 [Template] Create User And Run Service Validator
38
39 #username password role enabled
40 operator_user ${OPENBMC_PASSWORD} Operator ${True}
41 readonly_user ${OPENBMC_PASSWORD} ReadOnly ${True}
42
43
44*** Keywords ***
45
46Create User And Run Service Validator
47 [Documentation] Create user and run validator.
48 [Arguments] ${username} ${password} ${role} ${enabled}
49 [Teardown] Delete User Created ${username}
50
51 # Description of argument(s):
52 # username The username to be created.
53 # password The password to be assigned.
54 # role The role of the user to be created
55 # (e.g. "Administrator", "Operator", etc.).
56 # enabled Indicates whether the username being created
57 # should be enabled (${True}, ${False}).
58
59 Redfish.Login
60 Redfish Create User ${username} ${password} ${role} ${enabled}
61 Redfish.Logout
62
63 Download DMTF Tool ${rsv_dir_path} ${rsv_github_url}
64
65 ${cmd}= Catenate ${DEFAULT_PYTHON} ${rsv_dir_path}${/}RedfishServiceValidator.py
George Keishingd4ba2492022-01-10 08:27:34 -060066 ... --ip https://${OPENBMC_HOST}:${HTTPS_PORT} --nochkcert --authtype=Session -u ${username}
George Keishing4a95aef2020-03-04 01:33:42 -060067 ... -p ${password} --logdir ${EXECDIR}${/}logs_${username}${/} --debug_logging
68
69 Rprint Vars cmd
70
71 ${output}= Run DMTF Tool ${rsv_dir_path} ${cmd}
72
73 Redfish Service Validator Result ${output}
74
75
76Delete User Created
77 [Documentation] Delete user.
78 [Arguments] ${username}
79
80 # Description of argument(s):
81 # username The username to be deleted.
82
83 Redfish.Login
84 Redfish.Delete /redfish/v1/AccountService/Accounts/${username}
85 Redfish.Logout