Added new MAC address test cases.

Added Test Cases:
    - Configure invalid MAC address.
    - Persistency of MAC address on reboot.
    - Revert to initial MAC address.

Resolves openbmc/openbmc-test-automation#1682

Signed-off-by: Prashanth Katti <prkatti1@in.ibm.com>
Change-Id: I3b36640ad2b6827f97079b200bdf69f6724ef93c
diff --git a/redfish/managers/test_bmc_network_mac.robot b/redfish/managers/test_bmc_network_mac.robot
index 18f6ef3..8f42071 100644
--- a/redfish/managers/test_bmc_network_mac.robot
+++ b/redfish/managers/test_bmc_network_mac.robot
@@ -17,6 +17,9 @@
 ${zero_mac}          00:00:00:00:00:00
 ${broadcast_mac}     FF:FF:FF:FF:FF:FF
 
+# MAC address with special characters.
+${special_char_mac}  &A:$A:AA:AA:AA:^^
+
 *** Test Cases ***
 
 Configure Valid MAC And Verify
@@ -46,12 +49,38 @@
     # MAC address    scenario
     ${broadcast_mac}  error
 
+Configure Invalid MAC And Verify
+    [Documentation]  Configure invalid MAC address which is a string.
+    [Tags]  Configure_Invalid_MAC_And_Verify
+
+    [Template]  Configure MAC Settings
+    # MAC Address        Expected_Result
+    ${special_char_mac}  error
+
+Configure Valid MAC And Check Persistency
+    [Documentation]  Configure valid MAC and check persistency.
+    [Tags]  Configure_Valid_MAC_And_Check_Persistency
+
+    Configure MAC Settings  ${valid_mac}  valid
+
+    # Verify whether new MAC is configured on BMC.
+    Validate MAC On BMC  ${valid_mac}
+
+    # Reboot BMC and check whether MAC is persistent.
+    OBMC Reboot (off)
+    Validate MAC On BMC  ${valid_mac}
 
 *** Keywords ***
 
 Test Teardown Execution
     [Documentation]  Do the post test teardown.
 
+    # Revert to initial MAC address.
+    Configure MAC Settings  ${initial_mac_address}  valid
+
+    # Verify whether new MAC is configured on BMC.
+    Validate MAC On BMC  ${initial_mac_address}
+
     FFDC On Test Case Fail
     Redfish.Logout