Merge "test_res_rtp: Enable FIR and REMB nominal tests." into 16

This commit is contained in:
Joshua Colp 2019-10-16 07:50:24 -05:00 committed by Gerrit Code Review
commit 1659d56a7f
1 changed files with 13 additions and 13 deletions

View File

@ -327,6 +327,7 @@ AST_TEST_DEFINE(remb_nominal)
.data.ptr = &feedback,
.datalen = sizeof(feedback),
};
struct ast_rtp_rtcp_feedback *received_feedback;
switch (cmd) {
case TEST_INIT:
@ -337,8 +338,7 @@ AST_TEST_DEFINE(remb_nominal)
"Tests sending and receiving a REMB packet";
return AST_TEST_NOT_RUN;
case TEST_EXECUTE:
/* Disable for now - there's a bug! */
return AST_TEST_NOT_RUN;
break;
}
test_sched = ast_sched_context_create();
@ -353,12 +353,7 @@ AST_TEST_DEFINE(remb_nominal)
ast_rtp_instance_write(instance1, &frame_out);
/*
* There may be some additional work that needs to be done here, depending on how
* Asterisk handles the reading in of compound packets. We might get an ast_null_frame
* here instead of the REMB frame. We'll need to check the frametype to distinguish
* between them (AST_FRAME_NULL for ast_null_frame, AST_FRAME_RTCP for REMB).
*/
/* Verify the high level aspects of the frame */
frame_in = ast_rtp_instance_read(instance2, 0);
ast_test_validate(test, frame_in != NULL, "Did not receive a REMB frame");
ast_test_validate(test, frame_in->frametype == AST_FRAME_RTCP,
@ -366,6 +361,15 @@ AST_TEST_DEFINE(remb_nominal)
ast_test_validate(test, frame_in->subclass.integer == AST_RTP_RTCP_PSFB,
"REMB frame did not have the expected subclass integer");
/* Verify the actual REMB information itself */
received_feedback = frame_in->data.ptr;
ast_test_validate(test, received_feedback->fmt == AST_RTP_RTCP_FMT_REMB,
"REMB frame did not have the expected feedback format");
ast_test_validate(test, received_feedback->remb.br_exp == feedback.remb.br_exp,
"REMB received exponent did not match sent exponent");
ast_test_validate(test, received_feedback->remb.br_mantissa == feedback.remb.br_mantissa,
"REMB received mantissa did not match sent mantissa");
return AST_TEST_PASS;
}
@ -447,8 +451,7 @@ AST_TEST_DEFINE(fir_nominal)
"Tests sending and receiving a FIR packet";
return AST_TEST_NOT_RUN;
case TEST_EXECUTE:
/* Disable for now - there's a bug! */
return AST_TEST_NOT_RUN;
break;
}
test_sched = ast_sched_context_create();
@ -475,9 +478,6 @@ AST_TEST_DEFINE(fir_nominal)
* We only receive one frame, the FIR request. It won't have a subclass integer of
* 206 (PSFB) because ast_rtcp_interpret sets it to 18 (AST_CONTROL_VIDUPDATE), so
* check for that.
*
* NOTE - similar to REMB, there may be more that needs to be done here when the
* packet is sent as a compound packet!
*/
frame_in = ast_rtp_instance_read(instance2, 0);
ast_test_validate(test, frame_in != NULL, "Did not receive a FIR frame");