Modification of SOL activate Console output

Testcase Modified:
  - Verify_SOL_During_Boot

Added two variable names ${SOL_BIOS_OUTPUT} for BIOS screen content output and ${SOL_LOGIN_OUTPUT} for Login prompt content output.

The variables are defined under lib/resource.robot

Added time to Check IPMI SOL Output Content, i.e, 10 mins for BIOS content and 15 mins for Login prompt content.

Added IPMI Power ON at Test Teardown for making chassis Power on.

Tested: Run robot ipmi/test_ipmi_sol.robot

Signed-off-by: chithrag <chithrag@ami.com>
Change-Id: I4f0e86d858775111a8e297f834a80b99f00f828a
diff --git a/ipmi/test_ipmi_sol.robot b/ipmi/test_ipmi_sol.robot
index 0099233..ded917c 100644
--- a/ipmi/test_ipmi_sol.robot
+++ b/ipmi/test_ipmi_sol.robot
@@ -130,20 +130,31 @@
 
 
 Verify SOL During Boot
-    [Documentation]  Verify SOL during boot.
+    [Documentation]  Verify SOL activate console output during boot.
     [Tags]  Verify_SOL_During_Boot
 
     IPMI Power Off  stack_mode=skip
     Activate SOL Via IPMI
     Initiate Host Boot Via External IPMI  wait=${0}
 
-    Wait Until Keyword Succeeds  3 mins  15 secs
-    ...  Check IPMI SOL Output Content  Welcome to Hostboot
+    Should Not Be Empty  ${SOL_BIOS_OUTPUT}
+    Should Not Be Empty  ${SOL_LOGIN_OUTPUT}
 
-    Wait Until Keyword Succeeds  3 mins  15 secs
-    ...  Check IPMI SOL Output Content  ISTEP
+    # Content takes maximum of 10 minutes to display in SOL console
+    # SOL_BIOS_OUTPUT - BIOS SOL console output
+    ${status}=  Run Keyword And Return Status  Wait Until Keyword Succeeds  10 mins  15 secs
+    ...  Check IPMI SOL Output Content  ${SOL_BIOS_OUTPUT}
 
-    IPMI Power Off
+    Run Keyword If  '${status}' == 'False'
+    ...  Run Keywords  IPMI Power Off  AND  FAIL  msg=BIOS not loaded.
+
+    # SOL_LOGIN_OUTPUT - SOL output login prompt
+    # Once host reboot completes, SOL console may take maximum of 15 minutes to get the login prompt.
+    ${status}=  Run Keyword And Return Status  Wait Until Keyword Succeeds  15 mins  15 secs
+    ...  Check IPMI SOL Output Content  ${SOL_LOGIN_OUTPUT}
+
+    Run Keyword If  '${status}' == 'False'
+    ...  IPMI Power Off
 
 
 Verify Deactivate Non Existing SOL
diff --git a/lib/resource.robot b/lib/resource.robot
index 9a023ce..50015b3 100755
--- a/lib/resource.robot
+++ b/lib/resource.robot
@@ -62,6 +62,10 @@
 # Log default path for IPMI SOL.
 ${IPMI_SOL_LOG_FILE}    ${EXECDIR}${/}logs${/}sol_${OPENBMC_HOST}
 
+# IPMI SOL console output types/parameters to verify.
+${SOL_BIOS_OUTPUT}          ${EMPTY}
+${SOL_LOGIN_OUTPUT}         ${EMPTY}
+
 # PDU related parameters
 ${PDU_TYPE}         ${EMPTY}
 ${PDU_IP}           ${EMPTY}