Test Management Controller ID String Status via IPMI.

Test cases added:
    - Test Management Controller ID String Status via IPMI
    - Test Management Controller ID String Status via Raw IPMI

Change-Id: Iaa75e0c0fac3ccc35b766e90baf17f24b413e77f
Signed-off-by: Rahul Maheshwari <rahulmaheshwari@in.ibm.com>
diff --git a/tests/ipmi/test_general_ipmi.robot b/tests/ipmi/test_general_ipmi.robot
index 305ac2e..7145ede 100644
--- a/tests/ipmi/test_general_ipmi.robot
+++ b/tests/ipmi/test_general_ipmi.robot
@@ -87,6 +87,32 @@
     Get Management Controller ID String And Verify  ${initial_mc_id}
 
 
+Test Management Controller ID String Status via IPMI
+    [Documentation]  Test management controller ID string status via IPMI.
+    [Tags]  Test_Management_Controller_ID_String_Status_via_IPMI
+
+    # Disable management controller ID string status via IPMI and verify.
+    Run IPMI Standard Command  dcmi set_conf_param dhcp_config 0x00
+    Verify Management Controller ID String Status  disable
+
+    # Enable management controller ID string status via IPMI and verify.
+    Run IPMI Standard Command  dcmi set_conf_param dhcp_config 0x01
+    Verify Management Controller ID String Status  enable
+
+
+Test Management Controller ID String Status via Raw IPMI
+    [Documentation]  Test management controller ID string status via IPMI.
+    [Tags]  Test_Management_Controller_ID_String_Status_via_Raw_IPMI
+
+    # Disable management controller ID string status via raw IPMI and verify.
+    Run IPMI Standard Command  raw ${IPMI_RAW_CMD['conf_param']['Disabled'][0]}
+    Verify Management Controller ID String Status  disable
+
+    # Enable management controller ID string status via raw IPMI and verify.
+    Run IPMI Standard Command  raw ${IPMI_RAW_CMD['conf_param']['Enabled'][0]}
+    Verify Management Controller ID String Status  enable
+
+
 Verify Chassis Identify via IPMI
     [Documentation]  Verify "chassis identify" using IPMI command.
     [Tags]  Verify_Chassis_Identify_via_IPMI
@@ -663,6 +689,25 @@
     ...  Verify Power Reading Using REST  ${power_reading['instantaneous_power_reading']}
 
 
+Verify Management Controller ID String Status
+    [Documentation]  Verify management controller ID string status via IPMI.
+    [Arguments]  ${status}
+
+    # Example of dcmi get_conf_param command output:
+    # DHCP Discovery method   :
+    #           Management Controller ID String is disabled
+    #           Vendor class identifier DCMI IANA and Vendor class-specific Informationa are disabled
+    #   Initial timeout interval        : 4 seconds
+    #   Server contact timeout interval : 120 seconds
+    #   Server contact retry interval   : 64 seconds
+
+    ${resp}=  Run IPMI Standard Command  dcmi get_conf_param
+    ${resp}=  Get Lines Containing String  ${resp}
+    ...  Management Controller ID String  case_insensitive=True
+    Should Contain  ${resp}  ${status}
+    ...  msg=Management controller ID string is not ${status}
+
+
 Verify Power Reading Using REST
     [Documentation]  Verify power reading using REST.
     [Arguments]  ${power_reading}