[asterisk-dev] [Code Review] Add unit tests for jitterbuf.c
Matt Jordan
reviewboard at asterisk.org
Wed Mar 14 09:22:29 CDT 2012
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1815/
-----------------------------------------------------------
(Updated March 14, 2012, 9:22 a.m.)
Review request for Asterisk Developers.
Changes
-------
Cleaned up test, refactored out insertion portion of tests into methods. I thought about doing this as well for the portion that retrieves frames from the jitter buffer and checks their values, however, since those methods use JB_NUMERIC_TEST, which requires the cleanup label to be present, refactoring that out would probably only increase the amount of code and the complexity of the unit tests.
Summary
-------
This patch adds unit tests to cover major functions in jitterbuf.c. This include jb_put, jb_get, jb_next, as well as general information and statistic gathering. The scenarios include:
1) Nominal - adding voice/control frames and making sure that all added frames are removed and in the correct time slots
2) Out of Order - some voice/control frames arrive out of order with respect to the previous frame. The tests check that when reading from the jitter buffer, the frames are reordered
3) Lost - some voice/control frames never arrive. In the case of voice, the jitter buffer should interpolate the frame; in the case of control, the jitter buffer should report that no frame exists at that time slot
4) Late - the arrival time of some voice/control frames does not occur at the same rate as surrounding frames
5) Resync - test that voice/control frames that break the resync threshold trigger a resync of the jitter buffer
6) Overflow - test that adding voice/control frames that exceed the maximum time length of the buffer are dropped
This change was prompted by https://reviewboard.asterisk.org/r/1814 - not all tests will pass without that patch.
This addresses bug ASTERISK-18964.
https://issues.asterisk.org/jira/browse/ASTERISK-18964
Diffs (updated)
-----
/trunk/tests/test_jitterbuf.c PRE-CREATION
Diff: https://reviewboard.asterisk.org/r/1815/diff
Testing
-------
Thanks,
Matt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20120314/d34147ab/attachment.htm>
More information about the asterisk-dev
mailing list