Skip to content

Commit 43faee4

Browse files
committed
Fixed memory leak in unit-tests (deepcode found it)
1 parent 86a678a commit 43faee4

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

unit-tests.wsjcpp/src/unit_test_parsing_request_params.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ void UnitTestParsingRequestParams::executeTest() {
124124
compare("checkInputParams0 id", sId, "id1");
125125
std::string sMethod = jsonResponse["method"];
126126
compare("checkInputParams0 method", sMethod, "game_create");
127+
delete pRequest;
127128
}
128129

129130
// checkInputParams - paramer datatype string
@@ -155,6 +156,7 @@ void UnitTestParsingRequestParams::executeTest() {
155156
compare("checkInputParams1 id", sId, "id1");
156157
std::string sMethod = jsonResponse["method"];
157158
compare("checkInputParams1 method", sMethod, "game_create");
159+
delete pRequest;
158160
}
159161

160162
// checkInputParams - parameter data type int
@@ -186,6 +188,7 @@ void UnitTestParsingRequestParams::executeTest() {
186188
compare("checkInputParams2 id", sId, "id1");
187189
std::string sMethod = jsonResponse["method"];
188190
compare("checkInputParams2 method", sMethod, "game_create");
191+
delete pRequest;
189192
}
190193

191194
// checkInputParams - parameter data type boolean
@@ -223,6 +226,7 @@ void UnitTestParsingRequestParams::executeTest() {
223226
compare("checkInputParams3 id", sId, "id1");
224227
std::string sMethod = jsonResponse["method"];
225228
compare("checkInputParams3 method", sMethod, "game_create");
229+
delete pRequest;
226230
}
227231

228232
// checkInputParams - parameter data type json
@@ -259,6 +263,7 @@ void UnitTestParsingRequestParams::executeTest() {
259263
compare("checkInputParams4 id", sId, "id1");
260264
std::string sMethod = jsonResponse["method"];
261265
compare("checkInputParams4 method", sMethod, "game_create");
266+
delete pRequest;
262267
}
263268

264269
// checkInputParams - extra field
@@ -297,6 +302,7 @@ void UnitTestParsingRequestParams::executeTest() {
297302
compare("checkInputParams5 id", sId, "id1");
298303
std::string sMethod = jsonResponse["method"];
299304
compare("checkInputParams5 method", sMethod, "game_create");
305+
delete pRequest;
300306
}
301307

302308
// checkInputParams - string validator
@@ -336,6 +342,7 @@ void UnitTestParsingRequestParams::executeTest() {
336342
compare("checkInputParams6 id", sId, "id1");
337343
std::string sMethod = jsonResponse["method"];
338344
compare("checkInputParams6 method", sMethod, "game_create");
345+
delete pRequest;
339346
}
340347

341348
// checkInputParams - int validator
@@ -375,6 +382,7 @@ void UnitTestParsingRequestParams::executeTest() {
375382
compare("checkInputParams7 id", sId, "id1");
376383
std::string sMethod = jsonResponse["method"];
377384
compare("checkInputParams7 method", sMethod, "game_create");
385+
delete pRequest;
378386
}
379387

380388
// checkInputParams - json validator
@@ -414,7 +422,12 @@ void UnitTestParsingRequestParams::executeTest() {
414422
compare("checkInputParams8 id", sId, "id1");
415423
std::string sMethod = jsonResponse["method"];
416424
compare("checkInputParams8 method", sMethod, "game_create");
425+
delete pRequest;
417426
}
427+
428+
delete pHandlergameCreate;
429+
delete pWebSocketServer;
430+
delete pFakeClient;
418431
}
419432

420433
// ---------------------------------------------------------------------

unit-tests.wsjcpp/src/unit_test_request_parse_income_data.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
3939
compareS("parseIncomeData empty. id", sId, "unknown_id");
4040
std::string sMethod = jsonResponse["method"];
4141
compareS("parseIncomeData empty. method", sMethod, "unknown_method");
42+
delete pRequest;
4243
}
4344

4445
// missing 'id' in request
@@ -60,6 +61,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
6061
compareS("parseIncomeData missing id. id", sId, "unknown_id");
6162
std::string sMethod = jsonResponse["method"];
6263
compareS("parseIncomeData missing id. method", sMethod, "game_create");
64+
delete pRequest;
6365
}
6466

6567
// missing 'method' in request
@@ -82,6 +84,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
8284
compareS("parseIncomeData missing method. id", sId, "id1");
8385
std::string sMethod = jsonResponse["method"];
8486
compareS("parseIncomeData missing method. method", sMethod, "unknown_method");
87+
delete pRequest;
8588
}
8689

8790
// missing 'jsonrpc' in request
@@ -104,6 +107,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
104107
compareS("parseIncomeData missing jsonrpc. id", sId, "id1");
105108
std::string sMethod = jsonResponse["method"];
106109
compareS("parseIncomeData missing jsonrpc. method", sMethod, "game_create");
110+
delete pRequest;
107111
}
108112

109113
// field 'jsonrpc' is non string in request
@@ -127,6 +131,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
127131
compareS("parseIncomeData jsonrpc is non string. id", sId, "id1");
128132
std::string sMethod = jsonResponse["method"];
129133
compareS("parseIncomeData jsonrpc is non string. method", sMethod, "game_create");
134+
delete pRequest;
130135
}
131136

132137
// field 'jsonrpc' is no "2.0" in request
@@ -150,6 +155,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
150155
compareS("parseIncomeData jsonrpc is no 2.0. id", sId, "id1");
151156
std::string sMethod = jsonResponse["method"];
152157
compareS("parseIncomeData jsonrpc is no 2.0. method", sMethod, "game_create");
158+
delete pRequest;
153159
}
154160

155161
// field 'params' wrong
@@ -174,6 +180,7 @@ void UnitTestRequestParseIncomeData::executeTest() {
174180
compareS("parseIncomeData field params wrong. id", sId, "id1");
175181
std::string sMethod = jsonResponse["method"];
176182
compareS("parseIncomeData field params wrong. method", sMethod, "game_create");
183+
delete pRequest;
177184
}
178185

179186
// success parsing
@@ -189,7 +196,11 @@ void UnitTestRequestParseIncomeData::executeTest() {
189196
compareB("parseIncomeData success parsing", pRequest->parseIncomeData(sRequest), true);
190197
std::string sResponse = pFakeClient->getLastTextMessage();
191198
compareS("parseIncomeData success parsing. error must be empty", sResponse, "");
199+
delete pRequest;
192200
}
201+
202+
delete pWebSocketServer;
203+
delete pFakeClient;
193204
}
194205

195206
// ---------------------------------------------------------------------

0 commit comments

Comments
 (0)