Added case to verify Roles defined by Redfish

Verify standard roles described in Redfish Specification (DSP0266).

Change-Id: Ibaeab437fc550e415fe81f81dd4ce2c17517db6b
Signed-off-by: Tony Lee <tony.lee@quantatw.com>
diff --git a/redfish/account_service/test_user_account.robot b/redfish/account_service/test_user_account.robot
index 00a4350..a5a9de1 100644
--- a/redfish/account_service/test_user_account.robot
+++ b/redfish/account_service/test_user_account.robot
@@ -292,6 +292,44 @@
     Redfish.Delete  /redfish/v1/AccountService/Accounts/${user_name}
 
 
+Verify Standard User Roles Defined By Redfish
+    [Documentation]  Verify standard user roles defined by Redfish.
+    [Tags]  Verify_Standard_User_Roles_Defined_By_Redfish
+
+    ${member_list}=  Redfish_Utils.Get Member List
+    ...  /redfish/v1/AccountService/Roles
+
+    @{roles}=  Create List
+    ...  /redfish/v1/AccountService/Roles/Administrator
+    ...  /redfish/v1/AccountService/Roles/Operator
+    ...  /redfish/v1/AccountService/Roles/ReadOnly
+
+    List Should Contain Sub List  ${member_list}  ${roles}
+
+    # The standard roles are:
+
+    # | Role name | Assigned privileges |
+    # | Administrator | Login, ConfigureManager, ConfigureUsers, ConfigureComponents, ConfigureSelf |
+    # | Operator | Login, ConfigureComponents, ConfigureSelf |
+    # | ReadOnly | Login, ConfigureSelf |
+
+    @{admin}=  Create List  Login  ConfigureManager  ConfigureUsers  ConfigureComponents  ConfigureSelf
+    @{operator}=  Create List  Login  ConfigureComponents  ConfigureSelf
+    @{readOnly}=  Create List  Login  ConfigureSelf
+
+    ${roles_dict}=  create dictionary  admin_privileges=${admin}  operator_privileges=${operator}
+    ...  readOnly_privileges=${readOnly}
+
+    ${resp}=  redfish.Get  /redfish/v1/AccountService/Roles/Administrator
+    List Should Contain Sub List  ${resp.dict['AssignedPrivileges']}  ${roles_dict['admin_privileges']}
+
+    ${resp}=  redfish.Get  /redfish/v1/AccountService/Roles/Operator
+    List Should Contain Sub List  ${resp.dict['AssignedPrivileges']}  ${roles_dict['operator_privileges']}
+
+    ${resp}=  redfish.Get  /redfish/v1/AccountService/Roles/ReadOnly
+    List Should Contain Sub List  ${resp.dict['AssignedPrivileges']}  ${roles_dict['readOnly_privileges']}
+
+
 *** Keywords ***
 
 Test Teardown Execution