テスト関数で使用する静的グローバル変数をモックする方法はありますか? またはそのための回避策はありますか?
このような状況の例を以下に示します。
static zsock_t *publish_logs = NULL;
int btak_log_message_reactor(zloop_t *loop, zsock_t *reader, void *arg) {
struct btak_log_message *message;
size_t message_size;
if(zsock_recv(reader, "b", &message, &message_size) == 0) {
push_log_message(message);
if(publish_logs)
publish_log_message(message, publish_logs);
free(message);
}
return 0;
}