@@ -107,7 +107,7 @@ TEST_F(MediaErrorEventTest, MediaErrorEventMethodsTest) {
107107 );
108108
109109 EXPECT_EQ (errorEvent.getFailure (), AAMPTuneFailure::AAMP_TUNE_INIT_FAILED);
110- EXPECT_EQ (errorEvent.getCode (), 10 );
110+ EXPECT_EQ (errorEvent.getMajorCode (), 10 );
111111 EXPECT_EQ (errorEvent.getMinorCode (), 1001 );
112112 EXPECT_EQ (errorEvent.getDescription (), " Tune failure due to initialization error" );
113113 EXPECT_EQ (errorEvent.getResponseData (), " response data" );
@@ -121,7 +121,7 @@ TEST_F(MediaErrorEventTest, MediaErrorEventMethodsTest) {
121121TEST_F (MediaErrorEventTest, MediaErrorEventMethodsanotherTest) {
122122
123123 EXPECT_EQ (errorEvent->getFailure (), AAMPTuneFailure::AAMP_TUNE_FAILURE_UNKNOWN);
124- EXPECT_EQ (errorEvent->getCode (), 100 );
124+ EXPECT_EQ (errorEvent->getMajorCode (), 100 );
125125 EXPECT_EQ (errorEvent->getMinorCode (), 1 );
126126 EXPECT_EQ (errorEvent->getDescription (), " Test" );
127127 EXPECT_EQ (errorEvent->getResponseData (), " " );
@@ -132,7 +132,7 @@ TEST_F(MediaErrorEventTest, MediaErrorEventMethodsanotherTest) {
132132 EXPECT_EQ (errorEvent->GetSessionId (), session_id);
133133}
134134
135- // Structure to hold test parameters for MediaErrorEvent
135+ // Unified structure to hold test parameters for all MediaErrorEvent scenarios
136136struct MediaErrorEventParams {
137137 AAMPTuneFailure failure;
138138 int code;
@@ -145,12 +145,12 @@ struct MediaErrorEventParams {
145145 std::string responseData;
146146};
147147
148- // Parameterized test fixture for MediaErrorEvent
148+ // Unified parameterized test fixture for MediaErrorEvent
149149class MediaErrorEventParameterizedTest : public testing ::TestWithParam<MediaErrorEventParams> {
150150};
151151
152- // L1 Test: MediaErrorEvent with all AAMPTuneFailure enum values
153- TEST_P (MediaErrorEventParameterizedTest, MediaErrorEventAllFailureTypesTest ) {
152+ // L1 Test: MediaErrorEvent with all error scenarios (Failure Types, Tune failure, DRM failure, and Manifest failures)
153+ TEST_P (MediaErrorEventParameterizedTest, MediaErrorEventAllScenariosTest ) {
154154 MediaErrorEventParams params = GetParam ();
155155
156156 MediaErrorEvent event (
@@ -166,8 +166,9 @@ TEST_P(MediaErrorEventParameterizedTest, MediaErrorEventAllFailureTypesTest) {
166166 session_id
167167 );
168168
169+ // Verify all fields
169170 EXPECT_EQ (event.getFailure (), params.failure );
170- EXPECT_EQ (event.getCode (), params.code );
171+ EXPECT_EQ (event.getMajorCode (), params.code );
171172 EXPECT_EQ (event.getMinorCode (), params.minorCode );
172173 EXPECT_EQ (event.getDescription (), params.description );
173174 EXPECT_EQ (event.shouldRetry (), params.shouldRetry );
@@ -177,114 +178,26 @@ TEST_P(MediaErrorEventParameterizedTest, MediaErrorEventAllFailureTypesTest) {
177178 EXPECT_EQ (event.getResponseData (), params.responseData );
178179}
179180
180- // Instantiate the parameterized test with different AAMPTuneFailure values
181+ // Instantiate the unified parameterized test with all error scenarios
181182INSTANTIATE_TEST_SUITE_P (
182183 MediaErrorEventTest,
183184 MediaErrorEventParameterizedTest,
184185 testing::Values (
186+ // General AAMPTuneFailure error scenarios
185187 MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_INIT_FAILED, 10 , 1001 , " Init failed error" , false , 101 , 201 , 301 , " Init failed response" },
186188 MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_MANIFEST_REQ_FAILED, 30 , 3001 , " Manifest request failed" , true , 102 , 202 , 302 , " Manifest failed response" },
187189 MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_AUTHORIZATION_FAILURE, 40 , 4001 , " Authorization failed" , false , 103 , 203 , 303 , " Auth failed response" },
188- MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_UNTRACKED_DRM_ERROR, 50 , 5001 , " DRM error occurred" , true , 104 , 204 , 304 , " DRM error response" }
189- )
190- );
191-
192- // Structure to hold test parameters for DRM error scenarios
193- struct DRMErrorEventParams {
194- AAMPTuneFailure failure;
195- int code;
196- int minorCode;
197- std::string description;
198- bool shouldRetry;
199- int classCode;
200- int reasonCode;
201- int businessStatus;
202- std::string responseData;
203- };
204-
205- // Parameterized test fixture for DRM error scenarios
206- class MediaErrorEventDRMParameterizedTest : public testing ::TestWithParam<DRMErrorEventParams> {
207- };
208-
209- // L1 Test: MediaErrorEvent with DRM-specific error scenarios
210- TEST_P (MediaErrorEventDRMParameterizedTest, MediaErrorEventDRMErrorScenariosTest) {
211- DRMErrorEventParams params = GetParam ();
212-
213- MediaErrorEvent event (
214- params.failure ,
215- params.code ,
216- params.minorCode ,
217- params.description ,
218- params.shouldRetry ,
219- params.classCode ,
220- params.reasonCode ,
221- params.businessStatus ,
222- params.responseData ,
223- session_id
224- );
225-
226- EXPECT_EQ (event.getCode (), params.code );
227- EXPECT_EQ (event.getMinorCode (), params.minorCode );
228- EXPECT_EQ (event.getFailure (), params.failure );
229- EXPECT_EQ (event.getClass (), params.classCode );
230- EXPECT_EQ (event.getReason (), params.reasonCode );
231- EXPECT_EQ (event.getBusinessStatus (), params.businessStatus );
232- }
233-
234- // Instantiate the parameterized test with DRM error scenarios
235- INSTANTIATE_TEST_SUITE_P (
236- MediaErrorEventTest,
237- MediaErrorEventDRMParameterizedTest,
238- testing::Values (
239- DRMErrorEventParams{AAMPTuneFailure::AAMP_TUNE_FAILED_TO_GET_KEYID, 50 , 5009 , " DRM license acquisition failed" , false , 200 , 1 , -1 , " {\" errorCode\" :\" 3307\" ,\" message\" :\" License request failed\" }" },
240- DRMErrorEventParams{AAMPTuneFailure::AAMP_TUNE_UNTRACKED_DRM_ERROR, 50 , 5001 , " DRM key system not supported" , false , 300 , 2 , -1 , " {\" errorCode\" :\" 3321\" ,\" message\" :\" Unsupported key system\" }" },
241- DRMErrorEventParams{AAMPTuneFailure::AAMP_TUNE_DRM_INIT_FAILED, 50 , 5002 , " DRM session creation failed" , false , 400 , 3 , -1 , " {\" errorCode\" :\" 3304\" ,\" message\" :\" Failed to create DRM session\" }" }
242- )
243- );
244-
245- // Structure to hold test parameters for manifest parsing error scenarios
246- struct ManifestParsingErrorParams {
247- AAMPTuneFailure failure;
248- int code;
249- int minorCode;
250- std::string description;
251- bool shouldRetry;
252- std::string responseData;
253- };
254-
255- // Parameterized test fixture for manifest parsing errors
256- class MediaErrorEventManifestParameterizedTest : public testing ::TestWithParam<ManifestParsingErrorParams> {
257- };
258-
259- // L1 Test: MediaErrorEvent with manifest parsing error scenarios
260- TEST_P (MediaErrorEventManifestParameterizedTest, MediaErrorEventManifestParsingErrorsTest) {
261- ManifestParsingErrorParams params = GetParam ();
262-
263- MediaErrorEvent event (
264- params.failure ,
265- params.code ,
266- params.minorCode ,
267- params.description ,
268- params.shouldRetry ,
269- 0 , 0 , 0 ,
270- params.responseData ,
271- session_id
272- );
273-
274- EXPECT_EQ (event.getCode (), params.code );
275- EXPECT_EQ (event.getMinorCode (), params.minorCode );
276- EXPECT_EQ (event.getFailure (), params.failure );
277- EXPECT_EQ (event.shouldRetry (), params.shouldRetry );
278- }
279-
280- // Instantiate the parameterized test with manifest parsing error scenarios
281- INSTANTIATE_TEST_SUITE_P (
282- MediaErrorEventTest,
283- MediaErrorEventManifestParameterizedTest,
284- testing::Values (
285- ManifestParsingErrorParams{AAMPTuneFailure::AAMP_TUNE_INIT_FAILED_MANIFEST_PARSE_ERROR, 10 , 1004 , " Invalid manifest format" , false , " XML parse error at line 5" },
286- ManifestParsingErrorParams{AAMPTuneFailure::AAMP_TUNE_INIT_FAILED_MANIFEST_CONTENT_ERROR, 10 , 1003 , " Missing required manifest elements" , false , " Missing Period element in MPD" },
287- ManifestParsingErrorParams{AAMPTuneFailure::AAMP_TUNE_INVALID_MANIFEST_FAILURE, 30 , 3004 , " Unsupported manifest version" , false , " MPD version 2.0 not supported" }
190+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_UNTRACKED_DRM_ERROR, 50 , 5001 , " DRM error occurred" , true , 104 , 204 , 304 , " DRM error response" },
191+
192+ // DRM-specific error scenarios
193+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_FAILED_TO_GET_KEYID, 50 , 5009 , " DRM license acquisition failed" , false , 200 , 1 , -1 , " {\" errorCode\" :\" 3307\" ,\" message\" :\" License request failed\" }" },
194+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_UNTRACKED_DRM_ERROR, 50 , 5001 , " DRM key system not supported" , false , 300 , 2 , -1 , " {\" errorCode\" :\" 3321\" ,\" message\" :\" Unsupported key system\" }" },
195+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_DRM_INIT_FAILED, 50 , 5002 , " DRM session creation failed" , false , 400 , 3 , -1 , " {\" errorCode\" :\" 3304\" ,\" message\" :\" Failed to create DRM session\" }" },
196+
197+ // Manifest parsing error scenarios
198+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_INIT_FAILED_MANIFEST_PARSE_ERROR, 10 , 1004 , " Invalid manifest format" , false , 0 , 0 , 0 , " XML parse error at line 5" },
199+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_INIT_FAILED_MANIFEST_CONTENT_ERROR, 10 , 1003 , " Missing required manifest elements" , false , 0 , 0 , 0 , " Missing Period element in MPD" },
200+ MediaErrorEventParams{AAMPTuneFailure::AAMP_TUNE_INVALID_MANIFEST_FAILURE, 30 , 3004 , " Unsupported manifest version" , false , 0 , 0 , 0 , " MPD version 2.0 not supported" }
288201 )
289202);
290203// Test fixture for SpeedChangedEvent
0 commit comments