Added Read only user testcases to verify reboot page

Changes:
   - Verify Reboot BMC Page With Readonly User
     When Host On State
   - Verify Reboot BMC Page With Readonly User
     When Host Off State

Tested:
    - Successfully ran this from gui/gui_test

Change-Id: Ie7a44e56a0343abab3ef00f30cee41a12d99fe23
Signed-off-by: rramyasr in <rramyasr@in.ibm.com>
diff --git a/gui/gui_test/gui_header/test_gui_header.robot b/gui/gui_test/gui_header/test_gui_header.robot
index a0b5fe8..70c45e7 100644
--- a/gui/gui_test/gui_header/test_gui_header.robot
+++ b/gui/gui_test/gui_header/test_gui_header.robot
@@ -4,8 +4,8 @@
 
 Resource        ../../lib/gui_resource.robot
 
-Test Setup      Launch Browser And Login GUI
-Suite Teardown  Close Browser
+Suite Setup      Launch Browser And Login GUI
+Suite Teardown   Close Browser
 
 Test Tags      GUI_Header
 
@@ -49,7 +49,7 @@
     Click Element  ${xpath_logout_button}
     Wait Until Page Contains Element  ${xpath_login_button}  timeout=15s
     Wait Until Element Is Not Visible   ${xpath_page_loading_progress_bar}  timeout=30
-
+    Close Browser
 
 Verify System Serial And Model Number In GUI Header Page
     [Documentation]  Verify system serial and model number in GUI header page.
diff --git a/gui/gui_test/gui_header/test_profile_settings_sub_menu.robot b/gui/gui_test/gui_header/test_profile_settings_sub_menu.robot
index f738d98..536c65c 100644
--- a/gui/gui_test/gui_header/test_profile_settings_sub_menu.robot
+++ b/gui/gui_test/gui_header/test_profile_settings_sub_menu.robot
@@ -65,6 +65,7 @@
 
     Click Element At Coordinates    ${xpath_default_UTC}    0    0
     Click Element  ${xpath_profile_settings_save_button}
+    Verify Success Message On BMC GUI Page
 
     # Navigate to the overview page.
 
@@ -85,11 +86,13 @@
     [Tags]  Verify_Profile_Setting_Menu_With_Readonly_User
     [Setup]  Run Keywords  Create Readonly User And Login To GUI  AND  Test Setup Execution
     [Teardown]  Delete Readonly User And Logout Current GUI Session
-    # input username and password value and submit.
+
+    # Input username and password value and submit.
     Input Text  ${xpath_new_password}  ${OPENBMC_PASSWORD}
     Input Text  ${xpath_confirm_password}  ${OPENBMC_PASSWORD}
     Click Element At Coordinates    ${xpath_default_UTC}    0    0
     Click Element  ${xpath_profile_settings_save_button}
+
     # Readonly user have access to change self password,
     # So expecting success messages on this page.
     Verify Success Message On BMC GUI Page
diff --git a/gui/gui_test/operations_menu/test_reboot_bmc_sub_menu.robot b/gui/gui_test/operations_menu/test_reboot_bmc_sub_menu.robot
index 879d22e..2a8b765 100644
--- a/gui/gui_test/operations_menu/test_reboot_bmc_sub_menu.robot
+++ b/gui/gui_test/operations_menu/test_reboot_bmc_sub_menu.robot
@@ -69,11 +69,42 @@
     Wait For Host To Ping  ${OPENBMC_HOST}  1 min
 
     Wait Until Keyword Succeeds  3 min  10 sec  Is BMC Operational
-
     Click Element  ${xpath_refresh_button}
     Wait Until Element Is Visible  ${xpath_reboot_bmc_button}  timeout=10
 
 
+Verify Reboot BMC Page With Readonly User When Host On State
+    [Documentation]  Verify Reboot BMC page with readonly user when Host On state.
+    [Tags]  Verify_Reboot_BMC_Page_With_Readonly_User_When_Host_On_State
+    [Setup]  Run Keywords  Power On Server  AND  Create Readonly User And Login To GUI
+    ...      AND  Test Setup Execution
+    [Teardown]  Delete Readonly User And Logout Current GUI Session
+
+    # Click on Rebbot BMC button.
+    Click Element  ${xpath_reboot_bmc_button}
+
+    # Delay added for confirm button to appear.
+    Sleep  5s
+    Click Element At Coordinates  ${xpath_confirm_button}  0  0
+    Verify Error And Unauthorized Message On GUI
+
+
+Verify Reboot BMC Page With Readonly User When Host Off State
+    [Documentation]  Verify Reboot BMC page with readonly user when Host Off state.
+    [Tags]  Verify_Reboot_BMC_Page_With_Readonly_User_When_Host_Off_State
+    [Setup]   Run Keywords  Power Off Server  AND  Create Readonly User And Login To GUI
+    ...      AND  Test Setup Execution
+    [Teardown]  Delete Readonly User And Logout Current GUI Session
+
+    # Click on Rebbot BMC button.
+    Click Element  ${xpath_reboot_bmc_button}
+
+    # Delay added for confirm button to appear.
+    Sleep  5s
+    Click Element At Coordinates  ${xpath_confirm_button}  0  0
+    Verify Error And Unauthorized Message On GUI
+
+
 *** Keywords ***
 
 Test Setup Execution
diff --git a/gui/gui_test/overview_menu/test_overview_menu.robot b/gui/gui_test/overview_menu/test_overview_menu.robot
index d942e10..ef83af6 100644
--- a/gui/gui_test/overview_menu/test_overview_menu.robot
+++ b/gui/gui_test/overview_menu/test_overview_menu.robot
@@ -194,8 +194,8 @@
 Verify BMC Information At Host Power Off State
     [Documentation]  Verify that BMC information is displayed at host power off state.
     [Tags]  Verify_BMC_Information_At_Host_Power_Off_State
+    [Setup]  Run Keywords  Power On Server  AND  Test Setup Execution
 
-    Redfish Power Off  stack_mode=skip
     ${firmware_version}=  Redfish Get BMC Version
     Page Should Contain  ${firmware_version}
 
@@ -329,12 +329,15 @@
     [Tags]  Verify_Server_LED_Turn_Off_And_On_With_Readonly_User
     [Setup]  Create Readonly User And Login To GUI
     [Teardown]  Delete Readonly User And Logout Current GUI Session
+
     # Turn On the server LED via Redfish and refresh GUI.
     Set IndicatorLED State  Lit
     Refresh GUI
+
     # Turn OFF the LED via GUI.
     Click Element  ${xpath_led_button}
     Verify Error And Unauthorized Message On GUI
+
     # Turn ON the LED via GUI.
     Set IndicatorLED State   Off
     Refresh GUI
diff --git a/gui/lib/gui_resource.robot b/gui/lib/gui_resource.robot
index 4a1c14b..ad133b4 100644
--- a/gui/lib/gui_resource.robot
+++ b/gui/lib/gui_resource.robot
@@ -164,8 +164,7 @@
     # expected_value  Expected value of for the given element.
 
     # Refresh GUI.
-
-    Click Element  ${xpath_refresh_button}
+    Refresh GUI
 
     # Check element value and verify that it contains expected value.
     ${element_value}=  Get Text  ${element}
@@ -222,12 +221,11 @@
     [Documentation]  Navigate To Server Power Page.
 
     Click Element  ${xpath_power_page}
-    Wait Until Element Is Not Visible  {xpath_page_loading_progress_bar}  timeout=30
+    Wait Until Element Is Not Visible  ${xpath_page_loading_progress_bar}  timeout=30s
 
 
 Power Off Server
     [Documentation]  Powering off server.
-
     Navigate To Server Power Page
     ${present}=    Run Keyword And Return Status
     ...  Element Should Be Visible    ${xpath_power_shutdown}