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_discovery.h"
8 
expect_sp_discovery_ffa_version_get(const uint16_t * major,const uint16_t * minor,sp_result result)9 void expect_sp_discovery_ffa_version_get(const uint16_t *major,
10 					 const uint16_t *minor,
11 					 sp_result result)
12 {
13 	mock()
14 		.expectOneCall("sp_discovery_ffa_version_get")
15 		.withOutputParameterReturning("major", major, sizeof(*major))
16 		.withOutputParameterReturning("minor", minor, sizeof(*minor))
17 		.andReturnValue(result);
18 }
19 
sp_discovery_ffa_version_get(uint16_t * major,uint16_t * minor)20 sp_result sp_discovery_ffa_version_get(uint16_t *major, uint16_t *minor)
21 {
22 	return mock()
23 		.actualCall("sp_discovery_ffa_version_get")
24 		.withOutputParameter("major", major)
25 		.withOutputParameter("minor", minor)
26 		.returnIntValue();
27 }
28 
expect_sp_discovery_own_id_get(const uint16_t * id,sp_result result)29 void expect_sp_discovery_own_id_get(const uint16_t *id, sp_result result)
30 {
31 	mock()
32 		.expectOneCall("sp_discovery_own_id_get")
33 		.withOutputParameterReturning("id", id, sizeof(*id))
34 		.andReturnValue(result);
35 }
36 
sp_discovery_own_id_get(uint16_t * id)37 sp_result sp_discovery_own_id_get(uint16_t *id)
38 {
39 	return mock()
40 		.actualCall("sp_discovery_own_id_get")
41 		.withOutputParameter("id", id)
42 		.returnIntValue();
43 }
44 
expect_sp_discovery_partition_id_get(const struct sp_uuid * uuid,const uint16_t * id,sp_result result)45 void expect_sp_discovery_partition_id_get(const struct sp_uuid *uuid,
46 					  const uint16_t *id, sp_result result)
47 {
48 	mock()
49 		.expectOneCall("sp_discovery_partition_id_get")
50 		.withMemoryBufferParameter("uuid", (const unsigned char *)uuid,
51 					   sizeof(*uuid))
52 		.withOutputParameterReturning("id", id, sizeof(*id))
53 		.andReturnValue(result);
54 }
55 
sp_discovery_partition_id_get(const struct sp_uuid * uuid,uint16_t * id)56 sp_result sp_discovery_partition_id_get(const struct sp_uuid *uuid,
57 					uint16_t *id)
58 {
59 	return mock()
60 		.actualCall("sp_discovery_partition_id_get")
61 		.withMemoryBufferParameter("uuid", (const unsigned char *)uuid,
62 					   sizeof(*uuid))
63 		.withOutputParameter("id", id)
64 		.returnIntValue();
65 }
66 
expect_sp_discovery_partition_info_get(const struct sp_uuid * uuid,const struct sp_partition_info * info,uint32_t in_count,const uint32_t * out_count,sp_result result)67 void expect_sp_discovery_partition_info_get(const struct sp_uuid *uuid,
68 					  const struct sp_partition_info *info,
69 					  uint32_t in_count,
70 					  const uint32_t *out_count,
71 					  sp_result result)
72 {
73 	mock()
74 		.expectOneCall("sp_discovery_partition_info_get")
75 		.withMemoryBufferParameter("uuid", (const unsigned char *)uuid,
76 					   sizeof(*uuid))
77 		.withOutputParameterReturning("info", info, sizeof(*info))
78 		.withUnsignedIntParameter("in_count", in_count)
79 		.withOutputParameterReturning("out_count", out_count, sizeof(*out_count))
80 		.andReturnValue(result);
81 }
82 
sp_discovery_partition_info_get(const struct sp_uuid * uuid,struct sp_partition_info * info,uint32_t * count)83 sp_result sp_discovery_partition_info_get(const struct sp_uuid *uuid,
84 					  struct sp_partition_info *info,
85 					  uint32_t *count)
86 {
87 	return mock()
88 		.actualCall("sp_discovery_partition_info_get")
89 		.withMemoryBufferParameter("uuid", (const unsigned char *)uuid,
90 					   sizeof(*uuid))
91 		.withOutputParameter("info", info)
92 		.withUnsignedIntParameter("in_count", *count)
93 		.withOutputParameter("out_count", count)
94 		.returnIntValue();
95 }
96 
expect_sp_discovery_partition_info_get_all(const struct sp_partition_info info[],const uint32_t * count,sp_result result)97 void expect_sp_discovery_partition_info_get_all(const struct sp_partition_info info[],
98 						const uint32_t *count,
99 						sp_result result)
100 {
101 	mock()
102 		.expectOneCall("sp_discovery_partition_info_get_all")
103 		.withOutputParameterReturning("info", info, sizeof(*info) * *count)
104 		.withOutputParameterReturning("count", count, sizeof(*count))
105 		.andReturnValue(result);
106 }
107 
sp_discovery_partition_info_get_all(struct sp_partition_info info[],uint32_t * count)108 sp_result sp_discovery_partition_info_get_all(struct sp_partition_info info[],
109 					      uint32_t *count)
110 {
111 	return mock()
112 		.actualCall("sp_discovery_partition_info_get_all")
113 		.withOutputParameter("info", info)
114 		.withOutputParameter("count", count)
115 		.returnIntValue();
116 }
117