1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3 * Copyright (c) 2022, Arm Limited. All rights reserved.
4 */
5
6 #include <CppUTestExt/MockSupport.h>
7 #include "mock_sp_messaging.h"
8
expect_sp_msg_wait(const struct sp_msg * msg,sp_result result)9 void expect_sp_msg_wait(const struct sp_msg *msg, sp_result result)
10 {
11 mock()
12 .expectOneCall("sp_msg_wait")
13 .withOutputParameterReturning("msg", msg, sizeof(*msg))
14 .andReturnValue(result);
15 }
16
sp_msg_wait(struct sp_msg * msg)17 sp_result sp_msg_wait(struct sp_msg *msg)
18 {
19 return mock()
20 .actualCall("sp_msg_wait")
21 .withOutputParameter("msg", msg)
22 .returnIntValue();
23 }
24
expect_sp_msg_send_direct_req(const struct sp_msg * req,const struct sp_msg * resp,sp_result result)25 void expect_sp_msg_send_direct_req(const struct sp_msg *req,
26 const struct sp_msg *resp,
27 sp_result result)
28 {
29 mock()
30 .expectOneCall("sp_msg_send_direct_req")
31 .withMemoryBufferParameter("req", (const unsigned char *)req, sizeof(*req))
32 .withOutputParameterReturning("resp", resp, sizeof(*resp))
33 .andReturnValue(result);
34 }
35
sp_msg_send_direct_req(const struct sp_msg * req,struct sp_msg * resp)36 sp_result sp_msg_send_direct_req(const struct sp_msg *req, struct sp_msg *resp)
37 {
38 return mock()
39 .actualCall("sp_msg_send_direct_req")
40 .withMemoryBufferParameter("req", (const unsigned char *)req, sizeof(*req))
41 .withOutputParameter("resp", resp)
42 .returnIntValue();
43 }
44
expect_sp_msg_send_direct_resp(const struct sp_msg * resp,const struct sp_msg * req,sp_result result)45 void expect_sp_msg_send_direct_resp(const struct sp_msg *resp,
46 const struct sp_msg *req,
47 sp_result result)
48 {
49 mock()
50 .expectOneCall("sp_msg_send_direct_resp")
51 .withMemoryBufferParameter("resp", (const unsigned char *)resp, sizeof(*resp))
52 .withOutputParameterReturning("req", req, sizeof(*req))
53 .andReturnValue(result);
54 }
55
sp_msg_send_direct_resp(const struct sp_msg * resp,struct sp_msg * req)56 sp_result sp_msg_send_direct_resp(const struct sp_msg *resp,
57 struct sp_msg *req)
58 {
59 return mock()
60 .actualCall("sp_msg_send_direct_resp")
61 .withMemoryBufferParameter("resp", (const unsigned char *)resp, sizeof(*resp))
62 .withOutputParameter("req", req)
63 .returnIntValue();
64 }
65
66 #if FFA_DIRECT_MSG_ROUTING_EXTENSION
expect_sp_msg_send_rc_req(const struct sp_msg * req,const struct sp_msg * resp,sp_result result)67 void expect_sp_msg_send_rc_req(const struct sp_msg *req,
68 const struct sp_msg *resp,
69 sp_result result)
70 {
71 mock()
72 .expectOneCall("sp_msg_send_rc_req")
73 .withMemoryBufferParameter("req", (const unsigned char *)req, sizeof(*req))
74 .withOutputParameterReturning("resp", resp, sizeof(*resp))
75 .andReturnValue(result);
76 }
77
sp_msg_send_rc_req(const struct sp_msg * req,struct sp_msg * resp)78 sp_result sp_msg_send_rc_req(const struct sp_msg *req, struct sp_msg *resp)
79 {
80 return mock()
81 .actualCall("sp_msg_send_rc_req")
82 .withMemoryBufferParameter("req", (const unsigned char *)req, sizeof(*req))
83 .withOutputParameter("resp", resp)
84 .returnIntValue();
85 }
86 #endif /* FFA_DIRECT_MSG_ROUTING_EXTENSION */
87