requester: Use return code instead of throwing exception

The coroutine API should only forward error code and response data
to the caller when sends/receives PLDM message instead check the
response and thrown exception.

The `sendRecvMsg` API will response tuple of error code, response and
response length as below:

+ [error_code, _, _] if registerRequest fails with `error_code`.
+ [PLDM_ERROR_NOT_READY, nullptr, 0] if the request is timed out.
+ [PLDM_SUCCESS, resp, len] if succeeded.

Signed-off-by: Khang Nguyen Duy <khangng@amperecomputing.com>
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: Id8262d147e9fed50af8f55f1c611a3a3b153b6e3
diff --git a/requester/test/handler_test.cpp b/requester/test/handler_test.cpp
index bff08ca..4ac7861 100644
--- a/requester/test/handler_test.cpp
+++ b/requester/test/handler_test.cpp
@@ -167,13 +167,14 @@
         pldm::Request request(sizeof(pldm_msg_hdr) + sizeof(uint8_t), 0);
         const pldm_msg* responseMsg;
         size_t responseLen;
+        int rc = PLDM_SUCCESS;
 
         auto requestPtr = reinterpret_cast<pldm_msg*>(request.data());
         requestPtr->hdr.instance_id = instanceId;
 
         try
         {
-            std::tie(responseMsg, responseLen) =
+            std::tie(rc, responseMsg, responseLen) =
                 co_await reqHandler.sendRecvMsg(eid, std::move(request));
         }
         catch (...)
@@ -245,7 +246,7 @@
             auto rc = encode_get_tid_req(instanceId, requestMsg);
             EXPECT_EQ(rc, PLDM_SUCCESS);
 
-            std::tie(responseMsg, responseLen) =
+            std::tie(rc, responseMsg, responseLen) =
                 co_await handler.sendRecvMsg(eid, std::move(request));
             EXPECT_NE(responseLen, 0);