Skip to content

Commit 3aadd0a

Browse files
committed
Clean up tests, fix memory leak
1 parent 29db44c commit 3aadd0a

File tree

1 file changed

+61
-61
lines changed

1 file changed

+61
-61
lines changed

Diff for: tst/DualStackEndpointsTest.cpp

+61-61
Original file line numberDiff line numberDiff line change
@@ -12,122 +12,122 @@ class DualStackEndpointsTest : public WebRtcClientTestBase {
1212
TEST_F(DualStackEndpointsTest, customControlPlaneEndpointBasicCase)
1313
{
1414
STATUS retStatus;
15-
ChannelInfo originalChannelInfo;
16-
memset(&originalChannelInfo, 0, sizeof(originalChannelInfo));
17-
18-
ChannelInfo validatedChannelInfo;
19-
memset(&validatedChannelInfo, 0, sizeof(validatedChannelInfo));
20-
PChannelInfo pValidatedChannelInfo = &validatedChannelInfo;
21-
22-
CHAR originalControlPlaneUrl[MAX_CONTROL_PLANE_URI_CHAR_LEN] = "https://kinesisvideo.us-west-2.api.aws";
23-
CHAR validatedControlPlaneUrl[MAX_CONTROL_PLANE_URI_CHAR_LEN] = {0};
15+
ChannelInfo channelInfo;
16+
memset(&channelInfo, 0, sizeof(channelInfo));
17+
PChannelInfo pChannelInfo;
18+
CHAR originalCustomControlPlaneUrl[MAX_CONTROL_PLANE_URI_CHAR_LEN] = "https://kinesisvideo.us-west-2.api.aws";
19+
CHAR validatedCustomControlPlaneUrl[MAX_CONTROL_PLANE_URI_CHAR_LEN] = {0};
20+
21+
// Make a deep copy of customControlPlaneUrl into validatedCustomControlPlaneUrl to save the value for later comparison.
22+
strncpy(validatedCustomControlPlaneUrl, originalCustomControlPlaneUrl, MAX_CONTROL_PLANE_URI_CHAR_LEN);
23+
validatedCustomControlPlaneUrl[MAX_CONTROL_PLANE_URI_CHAR_LEN - 1] = '\0';
24+
25+
channelInfo.pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl;
2426

2527
// pChannelName must be set to make the createValidateChannelInfo call.
26-
originalChannelInfo.pChannelName = "TestChannelName";
28+
channelInfo.pChannelName = "TestChannelName";
2729

28-
// Make a deep copy of originalControlPlaneUrl into validatedControlPlaneUrl.
29-
strncpy(validatedControlPlaneUrl, originalControlPlaneUrl, MAX_CONTROL_PLANE_URI_CHAR_LEN);
30-
validatedControlPlaneUrl[MAX_CONTROL_PLANE_URI_CHAR_LEN - 1] = '\0';
30+
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&channelInfo, &pChannelInfo));
3131

32-
originalChannelInfo.pControlPlaneUrl = (PCHAR) validatedControlPlaneUrl;
32+
// Validate the ChanelInfo's Control Plane URL against the originalCustomControlPlaneUrl.
33+
EXPECT_STREQ(pChannelInfo->pControlPlaneUrl, (PCHAR) originalCustomControlPlaneUrl);
3334

34-
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&originalChannelInfo, &pValidatedChannelInfo));
35-
36-
// Validate the ChanelInfo's Control Plane URL against originalControlPlaneUrl in case createValidateChannelInfo
37-
// modified validatedControlPlaneUrl.
38-
EXPECT_STREQ(pValidatedChannelInfo->pControlPlaneUrl, (PCHAR) originalControlPlaneUrl);
35+
freeChannelInfo(&pChannelInfo);
3936
}
4037

4138
TEST_F(DualStackEndpointsTest, customControlPlaneEndpointEdgeCases)
4239
{
4340
STATUS retStatus;
44-
ChannelInfo originalChannelInfo;
45-
memset(&originalChannelInfo, 0, sizeof(originalChannelInfo));
46-
47-
ChannelInfo validatedChannelInfo;
48-
memset(&validatedChannelInfo, 0, sizeof(validatedChannelInfo));
49-
PChannelInfo pValidatedChannelInfo = &validatedChannelInfo;
50-
41+
ChannelInfo channelInfo;
42+
memset(&channelInfo, 0, sizeof(channelInfo));
43+
PChannelInfo pChannelInfo;
44+
5145
// TODO: Verify why we use MAX_URI_CHAR_LEN instead of MAX_CONTROL_PLANE_URI_CHAR_LEN for the custom URL.
5246
// MAX_URI_CHAR_LEN does not include the null terminator, so add 1.
53-
CHAR originalControlPlaneUrl[MAX_URI_CHAR_LEN + 1] = {0};
54-
CHAR validatedControlPlaneUrl[MAX_URI_CHAR_LEN + 1] = {0};
55-
47+
CHAR originalCustomControlPlaneUrl[MAX_URI_CHAR_LEN + 1] = {0};
48+
CHAR validatedCustomControlPlaneUrl[MAX_URI_CHAR_LEN + 1] = {0};
5649
CHAR expectedSdkGeneratedUri[MAX_CONTROL_PLANE_URI_CHAR_LEN] = {0};
5750

58-
// createValidateChannelInfo will use DEFAULT_AWS_REGION to generate a URL if needed
59-
// since we are not setting a region on originalChannelInfo.
51+
// If createValidateChannelInfo needs to generate the URL, it will use DEFAULT_AWS_REGION since
52+
// we are not setting a region on ChannelInfo.
6053
SNPRINTF(expectedSdkGeneratedUri, sizeof(expectedSdkGeneratedUri), "%s%s.%s%s",
6154
CONTROL_PLANE_URI_PREFIX, KINESIS_VIDEO_SERVICE_NAME, DEFAULT_AWS_REGION, CONTROL_PLANE_URI_POSTFIX);
6255

56+
channelInfo.pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl;
57+
6358
// pChannelName must be set to make the createValidateChannelInfo call.
64-
originalChannelInfo.pChannelName = "TestChannelName";
59+
channelInfo.pChannelName = "TestChannelName";
6560

6661

6762
/* MAX URL ARRAY LENGTH (expect the custom URL be used) */
6863

6964
// Fill array full of non-null values, accounting for null terminator.
70-
memset(originalControlPlaneUrl, 'X', sizeof(originalControlPlaneUrl));
71-
originalControlPlaneUrl[sizeof(originalControlPlaneUrl) - 1] = '\0';
65+
memset(originalCustomControlPlaneUrl, 'X', sizeof(originalCustomControlPlaneUrl));
66+
originalCustomControlPlaneUrl[sizeof(originalCustomControlPlaneUrl) - 1] = '\0';
7267

73-
// Make a deep copy of originalControlPlaneUrl into validatedControlPlaneUrl.
74-
strncpy(validatedControlPlaneUrl, originalControlPlaneUrl, sizeof(validatedControlPlaneUrl));
75-
validatedControlPlaneUrl[sizeof(validatedControlPlaneUrl) - 1] = '\0';
68+
// Make a deep copy of originalCustomControlPlaneUrl into validatedCustomControlPlaneUrl to save the value for
69+
// later comparison in case createValidateChannelInfo modified validatedCustomControlPlaneUrl.
70+
strncpy(validatedCustomControlPlaneUrl, originalCustomControlPlaneUrl, sizeof(validatedCustomControlPlaneUrl));
71+
validatedCustomControlPlaneUrl[sizeof(validatedCustomControlPlaneUrl) - 1] = '\0';
7672

77-
originalChannelInfo.pControlPlaneUrl = (PCHAR) validatedControlPlaneUrl;
73+
channelInfo.pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl;
7874

79-
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&originalChannelInfo, &pValidatedChannelInfo));
75+
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&channelInfo, &pChannelInfo));
8076

81-
// Validate the ChanelInfo's Control Plane URL against originalControlPlaneUrl in case createValidateChannelInfo
82-
// modified validatedControlPlaneUrl.
83-
EXPECT_STREQ(pValidatedChannelInfo->pControlPlaneUrl, (PCHAR) originalControlPlaneUrl);
77+
// Validate the ChanelInfo's Control Plane URL against originalCustomControlPlaneUrl in case createValidateChannelInfo
78+
// modified validatedCustomControlPlaneUrl.
79+
EXPECT_STREQ(pChannelInfo->pControlPlaneUrl, (PCHAR) originalCustomControlPlaneUrl);
80+
freeChannelInfo(&pChannelInfo);
8481

8582

8683
/* EMPTY URL ARRAY (expect SDK to construct a proper URL) */
8784

8885
// Fill array with null values.
89-
memset(validatedControlPlaneUrl, 0, sizeof(validatedControlPlaneUrl));
86+
memset(validatedCustomControlPlaneUrl, 0, sizeof(validatedCustomControlPlaneUrl));
9087

91-
originalChannelInfo.pControlPlaneUrl = (PCHAR) validatedControlPlaneUrl;
88+
channelInfo.pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl;
9289

93-
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&originalChannelInfo, &pValidatedChannelInfo));
94-
EXPECT_STREQ(pValidatedChannelInfo->pControlPlaneUrl, (PCHAR) expectedSdkGeneratedUri);
90+
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&channelInfo, &pChannelInfo));
91+
92+
// Validate the ChanelInfo's Control Plane URL should be the default one the SDK generated.
93+
EXPECT_STREQ(pChannelInfo->pControlPlaneUrl, (PCHAR) expectedSdkGeneratedUri);
94+
freeChannelInfo(&pChannelInfo);
9595

9696

9797
/* NULL URL ARRAY (expect SDK to construct a proper URL) */
9898

99-
originalChannelInfo.pControlPlaneUrl = (PCHAR) NULL;
99+
channelInfo.pControlPlaneUrl = (PCHAR) NULL;
100100

101-
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&originalChannelInfo, &pValidatedChannelInfo));
102-
EXPECT_STREQ(pValidatedChannelInfo->pControlPlaneUrl, (PCHAR) expectedSdkGeneratedUri);
101+
EXPECT_EQ(STATUS_SUCCESS, createValidateChannelInfo(&channelInfo, &pChannelInfo));
102+
EXPECT_STREQ(pChannelInfo->pControlPlaneUrl, (PCHAR) expectedSdkGeneratedUri);
103+
freeChannelInfo(&pChannelInfo);
103104
}
104105

105106

106107
TEST_F(DualStackEndpointsTest, customControlPlaneMaxEndpointLengthFailingCase)
107108
{
108109
STATUS retStatus;
109-
ChannelInfo originalChannelInfo;
110-
memset(&originalChannelInfo, 0, sizeof(originalChannelInfo));
111-
112-
ChannelInfo validatedChannelInfo;
113-
memset(&validatedChannelInfo, 0, sizeof(validatedChannelInfo));
114-
PChannelInfo pValidatedChannelInfo = &validatedChannelInfo;
110+
ChannelInfo channelInfo;
111+
memset(&channelInfo, 0, sizeof(channelInfo));
112+
PChannelInfo pChannelInfo;
115113

114+
116115
/* Exceed MAX URL ARRAY LENGTH (expect SDK to error out) */
117116

118117
// MAX_URI_CHAR_LEN does not include the null terminator, so add 2.
119-
CHAR originalControlPlaneUrl[MAX_URI_CHAR_LEN + 2] = {0};
118+
CHAR customControlPlaneUrl[MAX_URI_CHAR_LEN + 2] = {0};
120119

121120
// pChannelName must be set to make the createValidateChannelInfo call.
122-
originalChannelInfo.pChannelName = "TestChannelName";
121+
channelInfo.pChannelName = "TestChannelName";
123122

124123
// Fill array full of non-null values, accounting for null terminator.
125-
memset(originalControlPlaneUrl, 'X', sizeof(originalControlPlaneUrl));
126-
originalControlPlaneUrl[sizeof(originalControlPlaneUrl) - 1] = '\0';
124+
memset(customControlPlaneUrl, 'X', sizeof(customControlPlaneUrl));
125+
customControlPlaneUrl[sizeof(customControlPlaneUrl) - 1] = '\0';
127126

128-
originalChannelInfo.pControlPlaneUrl = (PCHAR) originalControlPlaneUrl;
127+
channelInfo.pControlPlaneUrl = (PCHAR) customControlPlaneUrl;
129128

130-
EXPECT_EQ(STATUS_SIGNALING_INVALID_CPL_LENGTH, createValidateChannelInfo(&originalChannelInfo, &pValidatedChannelInfo));
129+
EXPECT_EQ(STATUS_SIGNALING_INVALID_CPL_LENGTH, createValidateChannelInfo(&channelInfo, &pChannelInfo));
130+
freeChannelInfo(&pChannelInfo);
131131
}
132132

133133

0 commit comments

Comments
 (0)