TDengine/source/libs/sync/test/syncRpcMsgTest.cpp

181 lines
4.7 KiB
C++
Raw Normal View History

2022-03-11 11:52:59 +00:00
#include <gtest/gtest.h>
#include <stdio.h>
#include "syncIO.h"
#include "syncInt.h"
#include "syncMessage.h"
#include "syncUtil.h"
void logTest() {
sTrace("--- sync log test: trace");
sDebug("--- sync log test: debug");
sInfo("--- sync log test: info");
sWarn("--- sync log test: warn");
sError("--- sync log test: error");
sFatal("--- sync log test: fatal");
}
int gg = 0;
SyncTimeout *createSyncTimeout() {
2022-04-18 13:50:56 +00:00
SyncTimeout *pMsg = syncTimeoutBuild2(SYNC_TIMEOUT_PING, 999, 333, 1000, &gg);
2022-03-11 11:52:59 +00:00
return pMsg;
}
SyncPing *createSyncPing() {
SRaftId srcId, destId;
srcId.addr = syncUtilAddr2U64("127.0.0.1", 1234);
srcId.vgId = 100;
destId.addr = syncUtilAddr2U64("127.0.0.1", 5678);
destId.vgId = 100;
2022-04-18 13:50:56 +00:00
SyncPing *pMsg = syncPingBuild3(&srcId, &destId, 1000);
2022-03-11 11:52:59 +00:00
return pMsg;
}
SyncPingReply *createSyncPingReply() {
SRaftId srcId, destId;
srcId.addr = syncUtilAddr2U64("127.0.0.1", 1234);
srcId.vgId = 100;
destId.addr = syncUtilAddr2U64("127.0.0.1", 5678);
destId.vgId = 100;
2022-04-18 13:50:56 +00:00
SyncPingReply *pMsg = syncPingReplyBuild3(&srcId, &destId, 1000);
2022-03-11 11:52:59 +00:00
return pMsg;
}
SyncClientRequest *createSyncClientRequest() {
SRpcMsg rpcMsg;
memset(&rpcMsg, 0, sizeof(rpcMsg));
rpcMsg.msgType = 12345;
rpcMsg.contLen = 20;
rpcMsg.pCont = rpcMallocCont(rpcMsg.contLen);
strcpy((char *)rpcMsg.pCont, "hello rpc");
2022-04-18 13:50:56 +00:00
SyncClientRequest *pMsg = syncClientRequestBuild2(&rpcMsg, 123, true, 1000);
2022-03-11 11:52:59 +00:00
return pMsg;
}
SyncRequestVote *createSyncRequestVote() {
2022-04-18 13:50:56 +00:00
SyncRequestVote *pMsg = syncRequestVoteBuild(1000);
2022-03-11 11:52:59 +00:00
pMsg->srcId.addr = syncUtilAddr2U64("127.0.0.1", 1234);
pMsg->srcId.vgId = 100;
pMsg->destId.addr = syncUtilAddr2U64("127.0.0.1", 5678);
pMsg->destId.vgId = 100;
2022-03-14 12:43:35 +00:00
pMsg->term = 11;
2022-03-11 11:52:59 +00:00
pMsg->lastLogIndex = 22;
pMsg->lastLogTerm = 33;
return pMsg;
}
SyncRequestVoteReply *createSyncRequestVoteReply() {
2022-04-18 13:50:56 +00:00
SyncRequestVoteReply *pMsg = syncRequestVoteReplyBuild(1000);
2022-03-11 11:52:59 +00:00
pMsg->srcId.addr = syncUtilAddr2U64("127.0.0.1", 1234);
pMsg->srcId.vgId = 100;
pMsg->destId.addr = syncUtilAddr2U64("127.0.0.1", 5678);
pMsg->destId.vgId = 100;
pMsg->term = 77;
pMsg->voteGranted = true;
return pMsg;
}
SyncAppendEntries *createSyncAppendEntries() {
2022-04-18 13:50:56 +00:00
SyncAppendEntries *pMsg = syncAppendEntriesBuild(20, 1000);
2022-03-11 11:52:59 +00:00
pMsg->srcId.addr = syncUtilAddr2U64("127.0.0.1", 1234);
pMsg->srcId.vgId = 100;
pMsg->destId.addr = syncUtilAddr2U64("127.0.0.1", 5678);
pMsg->destId.vgId = 100;
pMsg->prevLogIndex = 11;
pMsg->prevLogTerm = 22;
pMsg->commitIndex = 33;
strcpy(pMsg->data, "hello world");
return pMsg;
}
SyncAppendEntriesReply *createSyncAppendEntriesReply() {
2022-04-18 13:50:56 +00:00
SyncAppendEntriesReply *pMsg = syncAppendEntriesReplyBuild(1000);
2022-03-11 11:52:59 +00:00
pMsg->srcId.addr = syncUtilAddr2U64("127.0.0.1", 1234);
pMsg->srcId.vgId = 100;
pMsg->destId.addr = syncUtilAddr2U64("127.0.0.1", 5678);
pMsg->destId.vgId = 100;
pMsg->success = true;
pMsg->matchIndex = 77;
return pMsg;
}
void test1() {
SyncTimeout *pMsg = createSyncTimeout();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncTimeout2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test1", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncTimeoutDestroy(pMsg);
}
void test2() {
SyncPing *pMsg = createSyncPing();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncPing2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test2", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncPingDestroy(pMsg);
}
void test3() {
SyncPingReply *pMsg = createSyncPingReply();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncPingReply2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test3", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncPingReplyDestroy(pMsg);
}
void test4() {
SyncRequestVote *pMsg = createSyncRequestVote();
SRpcMsg rpcMsg;
syncRequestVote2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test4", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncRequestVoteDestroy(pMsg);
}
void test5() {
SyncRequestVoteReply *pMsg = createSyncRequestVoteReply();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncRequestVoteReply2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test5", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncRequestVoteReplyDestroy(pMsg);
}
void test6() {
SyncAppendEntries *pMsg = createSyncAppendEntries();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncAppendEntries2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test6", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncAppendEntriesDestroy(pMsg);
}
void test7() {
SyncAppendEntriesReply *pMsg = createSyncAppendEntriesReply();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncAppendEntriesReply2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test7", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncAppendEntriesReplyDestroy(pMsg);
}
void test8() {
SyncClientRequest *pMsg = createSyncClientRequest();
2022-03-12 04:29:44 +00:00
SRpcMsg rpcMsg;
2022-03-11 11:52:59 +00:00
syncClientRequest2RpcMsg(pMsg, &rpcMsg);
2022-04-18 13:50:56 +00:00
syncRpcMsgLog2((char *)"test8", &rpcMsg);
2022-03-11 11:52:59 +00:00
syncClientRequestDestroy(pMsg);
}
int main() {
tsAsyncLog = 0;
2022-04-18 13:50:56 +00:00
sDebugFlag = DEBUG_TRACE + DEBUG_SCREEN + DEBUG_FILE;
2022-03-11 11:52:59 +00:00
logTest();
test1();
test2();
test3();
test4();
test5();
test6();
test7();
test8();
return 0;
}