Skip to content

Commit 8b372c9

Browse files
committed
Make the Mock API in rdkafka_mock.h part of the public API
1 parent 64eb275 commit 8b372c9

File tree

6 files changed

+19
-5
lines changed

6 files changed

+19
-5
lines changed

debian/librdkafka-dev.install

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
usr/include/*/rdkafka.h
22
usr/include/*/rdkafkacpp.h
3+
usr/include/*/rdkafka_mock.h
34
usr/lib/*/librdkafka.a
45
usr/lib/*/librdkafka.so
56
usr/lib/*/librdkafka++.a

packaging/nuget/packaging.py

+2
Original file line numberDiff line numberDiff line change
@@ -321,6 +321,7 @@ def build (self, buildtype):
321321
mappings = [
322322
[{'arch': 'x64', 'plat': 'linux', 'fname_glob': 'librdkafka-gcc.tar.gz'}, './include/librdkafka/rdkafka.h', 'build/native/include/librdkafka/rdkafka.h'],
323323
[{'arch': 'x64', 'plat': 'linux', 'fname_glob': 'librdkafka-gcc.tar.gz'}, './include/librdkafka/rdkafkacpp.h', 'build/native/include/librdkafka/rdkafkacpp.h'],
324+
[{'arch': 'x64', 'plat': 'linux', 'fname_glob': 'librdkafka-gcc.tar.gz'}, './include/librdkafka/rdkafka_mock.h', 'build/native/include/librdkafka/rdkafka_mock.h'],
324325

325326
# Travis OSX build
326327
[{'arch': 'x64', 'plat': 'osx', 'fname_glob': 'librdkafka-clang.tar.gz'}, './lib/librdkafka.dylib', 'runtimes/osx-x64/native/librdkafka.dylib'],
@@ -422,6 +423,7 @@ def verify (self, path):
422423
"build/native/librdkafka.redist.targets",
423424
"build/native/include/librdkafka/rdkafka.h",
424425
"build/native/include/librdkafka/rdkafkacpp.h",
426+
"build/native/include/librdkafka/rdkafka_mock.h",
425427
"build/native/lib/win/x64/win-x64-Release/v120/librdkafka.lib",
426428
"build/native/lib/win/x64/win-x64-Release/v120/librdkafkacpp.lib",
427429
"build/native/lib/win/x86/win-x86-Release/v120/librdkafka.lib",

src/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,6 @@ install(
302302
)
303303

304304
install(
305-
FILES "rdkafka.h"
305+
FILES "rdkafka.h" "rdkafka_mock.h"
306306
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/librdkafka"
307307
)

src/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ SRCS= rdkafka.c rdkafka_broker.c rdkafka_msg.c rdkafka_topic.c \
5151
rdkafka_mock.c rdkafka_mock_handlers.c \
5252
$(SRCS_y)
5353

54-
HDRS= rdkafka.h
54+
HDRS= rdkafka.h rdkafka_mock.h
5555

5656
OBJS= $(SRCS:.c=.o)
5757

src/rdkafka_mock.h

+13-2
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,11 @@
2929
#ifndef _RDKAFKA_MOCK_H_
3030
#define _RDKAFKA_MOCK_H_
3131

32+
#ifndef _RDKAFKA_H_
33+
#error "rdkafka_mock.h must be included after rdkafka.h"
34+
#endif
35+
36+
3237

3338
/**
3439
* @name Mock cluster
@@ -79,13 +84,15 @@ typedef struct rd_kafka_mock_cluster_s rd_kafka_mock_cluster_t;
7984
* The \p rk instance is required for internal book keeping but continues
8085
* to operate as usual.
8186
*/
87+
RD_EXPORT
8288
rd_kafka_mock_cluster_t *rd_kafka_mock_cluster_new (rd_kafka_t *rk,
8389
int broker_cnt);
8490

8591

8692
/**
8793
* @brief Destroy mock cluster.
8894
*/
95+
RD_EXPORT
8996
void rd_kafka_mock_cluster_destroy (rd_kafka_mock_cluster_t *mcluster);
9097

9198

@@ -94,15 +101,15 @@ void rd_kafka_mock_cluster_destroy (rd_kafka_mock_cluster_t *mcluster);
94101
* @returns the rd_kafka_t instance for a cluster as passed to
95102
* rd_kafka_mock_cluster_new().
96103
*/
97-
rd_kafka_t *
104+
RD_EXPORT rd_kafka_t *
98105
rd_kafka_mock_cluster_handle (const rd_kafka_mock_cluster_t *mcluster);
99106

100107

101108

102109
/**
103110
* @returns the mock cluster's bootstrap.servers list
104111
*/
105-
const char *
112+
RD_EXPORT const char *
106113
rd_kafka_mock_cluster_bootstraps (const rd_kafka_mock_cluster_t *mcluster);
107114

108115

@@ -116,6 +123,7 @@ rd_kafka_mock_cluster_bootstraps (const rd_kafka_mock_cluster_t *mcluster);
116123
* provided error code and removed from the stack, starting with
117124
* the first error code, then the second, etc.
118125
*/
126+
RD_EXPORT
119127
void rd_kafka_mock_push_request_errors (rd_kafka_mock_cluster_t *mcluster,
120128
int16_t ApiKey, size_t cnt, ...);
121129

@@ -124,6 +132,7 @@ void rd_kafka_mock_push_request_errors (rd_kafka_mock_cluster_t *mcluster,
124132
*
125133
* Currently only used for TopicMetadataRequest and AddPartitionsToTxnRequest.
126134
*/
135+
RD_EXPORT
127136
void rd_kafka_mock_topic_set_error (rd_kafka_mock_cluster_t *mcluster,
128137
const char *topic,
129138
rd_kafka_resp_err_t err);
@@ -133,13 +142,15 @@ void rd_kafka_mock_topic_set_error (rd_kafka_mock_cluster_t *mcluster,
133142
*
134143
* \p broker_id does not need to point to an existing broker.
135144
*/
145+
RD_EXPORT
136146
void rd_kafka_mock_partition_set_follower (rd_kafka_mock_cluster_t *mcluster,
137147
const char *topic, int32_t partition,
138148
int32_t broker_id);
139149

140150
/**
141151
* @brief Set's the broker's rack as reported in Metadata to the client.
142152
*/
153+
RD_EXPORT
143154
void rd_kafka_mock_broker_set_rack (rd_kafka_mock_cluster_t *mcluster,
144155
int32_t broker_id, const char *rack);
145156

win32/librdkafka.autopkg.template

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ nuget {
3535
};
3636
nestedInclude: {
3737
#destination = ${d_include}librdkafka;
38-
${TOPDIR}src\rdkafka.h, ${TOPDIR}src-cpp\rdkafkacpp.h
38+
${TOPDIR}src\rdkafka.h, ${TOPDIR}src\rdkafka_mock.h, ${TOPDIR}src-cpp\rdkafkacpp.h
3939
};
4040
docs: { ${TOPDIR}README.md, ${TOPDIR}CONFIGURATION.md, ${TOPDIR}LICENSES.txt };
4141

0 commit comments

Comments
 (0)