Automated test case fail to release lock when valid & invalid
transaction id passed to release lock request

Changes:
   -  Test case "Fail To Release Multiple Lock With Valid And
      Invalid TransactionID"
   -  Keyword "Verify Fail To Release Multiple Lock With Valid
      And Invalid TransactionID"

Change-Id: If83f29a12e787ada807b06b1ebdaba87517341db
Signed-off-by: Sushil Singh <susilsi7@in.ibm.com>
diff --git a/openpower/ext_interfaces/test_lock_management.robot b/openpower/ext_interfaces/test_lock_management.robot
index 6db1281..50a2132 100644
--- a/openpower/ext_interfaces/test_lock_management.robot
+++ b/openpower/ext_interfaces/test_lock_management.robot
@@ -148,6 +148,15 @@
     HMCID          ReadCase3,ReadCase3,ReadCase3    Transaction
 
 
+Fail To Release Multiple Lock With Valid And Invalid TransactionID
+    [Documentation]  Release multiple lock with valid and invalid trasaction.
+    [Tags]  Fail_To_Release_Multiple_Lock_With_Valid_And_Invalid_TransactionID
+    [Template]  Verify Fail To Release Multiple Lock With Valid And Invalid TransactionID
+
+    # client_id    lock_type              release_lock_type
+    HMCID-01       ReadCase1,ReadCase1    Transaction
+
+
 Fail To Release Lock For Another Session
     [Documentation]  Failed to release locks from another session.
     [Tags]  Fail_To_Release_Lock_For_Another_Session
@@ -906,6 +915,40 @@
     Redfish Delete Session  ${session_info}
 
 
+Verify Fail To Release Multiple Lock With Valid And Invalid TransactionID
+    [Documentation]  Verify fail to be release multiple lock with valid and invalid trasaction ID.
+    [Arguments]  ${client_id}  ${lock_type}  ${release_lock_type}
+
+    # Description of argument(s):
+    # client_id          This client id can contain string value
+    #                    (e.g. 12345, "HMCID").
+    # lock_type          Read lock or Write lock.
+    # release_lock_type  The value can be Transaction or Session.
+
+    ${trans_id_list}=  Create List
+    @{lock_type_list}=  Split String  ${lock_type}  ,
+
+    ${session_info}=  Create Redfish Session With ClientID  ${client_id}
+
+    ${trans_id}=  Redfish Post Acquire Lock  ${lock_type_list}[0]
+    Append To List  ${trans_id_list}  ${trans_id}
+
+    ${trans_id}=  Redfish Post Acquire Lock  ${lock_type_list}[1]
+    ${value}=  Get From Dictionary  ${trans_id}  TransactionID
+    ${value}=  Evaluate  ${value} + 10
+    Set To Dictionary  ${trans_id}  TransactionID  ${value}
+    Append To List  ${trans_id_list}  ${trans_id}
+
+    Release Locks On Resource
+    ...  ${session_info}  ${trans_id_list}
+    ...  release_lock_type=${release_lock_type}  status_code=${HTTP_BAD_REQUEST}
+    Release Locks On Resource  ${session_info}  ${trans_id_list}  release_lock_type=Session
+
+    ${trans_id_emptylist}=  Create List
+    Verify Lock On Resource  ${session_info}  ${trans_id_emptylist}
+    Redfish Delete Session  ${session_info}
+
+
 Verify Fail To Release Lock For Another Session
     [Documentation]  Verify failed to release the lock form another session.
     [Arguments]  ${client_id}  ${lock_type}