@@ -12,122 +12,122 @@ class DualStackEndpointsTest : public WebRtcClientTestBase {
12
12
TEST_F (DualStackEndpointsTest, customControlPlaneEndpointBasicCase)
13
13
{
14
14
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;
24
26
25
27
// pChannelName must be set to make the createValidateChannelInfo call.
26
- originalChannelInfo .pChannelName = " TestChannelName" ;
28
+ channelInfo .pChannelName = " TestChannelName" ;
27
29
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));
31
31
32
- originalChannelInfo.pControlPlaneUrl = (PCHAR) validatedControlPlaneUrl;
32
+ // Validate the ChanelInfo's Control Plane URL against the originalCustomControlPlaneUrl.
33
+ EXPECT_STREQ (pChannelInfo->pControlPlaneUrl , (PCHAR) originalCustomControlPlaneUrl);
33
34
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);
39
36
}
40
37
41
38
TEST_F (DualStackEndpointsTest, customControlPlaneEndpointEdgeCases)
42
39
{
43
40
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
+
51
45
// TODO: Verify why we use MAX_URI_CHAR_LEN instead of MAX_CONTROL_PLANE_URI_CHAR_LEN for the custom URL.
52
46
// 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 };
56
49
CHAR expectedSdkGeneratedUri[MAX_CONTROL_PLANE_URI_CHAR_LEN] = {0 };
57
50
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 .
60
53
SNPRINTF (expectedSdkGeneratedUri, sizeof (expectedSdkGeneratedUri), " %s%s.%s%s" ,
61
54
CONTROL_PLANE_URI_PREFIX, KINESIS_VIDEO_SERVICE_NAME, DEFAULT_AWS_REGION, CONTROL_PLANE_URI_POSTFIX);
62
55
56
+ channelInfo.pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl;
57
+
63
58
// pChannelName must be set to make the createValidateChannelInfo call.
64
- originalChannelInfo .pChannelName = " TestChannelName" ;
59
+ channelInfo .pChannelName = " TestChannelName" ;
65
60
66
61
67
62
/* MAX URL ARRAY LENGTH (expect the custom URL be used) */
68
63
69
64
// 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 ' ;
72
67
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 ' ;
76
72
77
- originalChannelInfo .pControlPlaneUrl = (PCHAR) validatedControlPlaneUrl ;
73
+ channelInfo .pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl ;
78
74
79
- EXPECT_EQ (STATUS_SUCCESS, createValidateChannelInfo (&originalChannelInfo , &pValidatedChannelInfo ));
75
+ EXPECT_EQ (STATUS_SUCCESS, createValidateChannelInfo (&channelInfo , &pChannelInfo ));
80
76
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);
84
81
85
82
86
83
/* EMPTY URL ARRAY (expect SDK to construct a proper URL) */
87
84
88
85
// Fill array with null values.
89
- memset (validatedControlPlaneUrl , 0 , sizeof (validatedControlPlaneUrl ));
86
+ memset (validatedCustomControlPlaneUrl , 0 , sizeof (validatedCustomControlPlaneUrl ));
90
87
91
- originalChannelInfo .pControlPlaneUrl = (PCHAR) validatedControlPlaneUrl ;
88
+ channelInfo .pControlPlaneUrl = (PCHAR) validatedCustomControlPlaneUrl ;
92
89
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);
95
95
96
96
97
97
/* NULL URL ARRAY (expect SDK to construct a proper URL) */
98
98
99
- originalChannelInfo .pControlPlaneUrl = (PCHAR) NULL ;
99
+ channelInfo .pControlPlaneUrl = (PCHAR) NULL ;
100
100
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);
103
104
}
104
105
105
106
106
107
TEST_F (DualStackEndpointsTest, customControlPlaneMaxEndpointLengthFailingCase)
107
108
{
108
109
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;
115
113
114
+
116
115
/* Exceed MAX URL ARRAY LENGTH (expect SDK to error out) */
117
116
118
117
// 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 };
120
119
121
120
// pChannelName must be set to make the createValidateChannelInfo call.
122
- originalChannelInfo .pChannelName = " TestChannelName" ;
121
+ channelInfo .pChannelName = " TestChannelName" ;
123
122
124
123
// 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 ' ;
127
126
128
- originalChannelInfo .pControlPlaneUrl = (PCHAR) originalControlPlaneUrl ;
127
+ channelInfo .pControlPlaneUrl = (PCHAR) customControlPlaneUrl ;
129
128
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);
131
131
}
132
132
133
133
0 commit comments