diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /third_party/libwebrtc/rtc_tools/py_event_log_analyzer/rtp_analyzer_test.py | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/libwebrtc/rtc_tools/py_event_log_analyzer/rtp_analyzer_test.py')
-rwxr-xr-x | third_party/libwebrtc/rtc_tools/py_event_log_analyzer/rtp_analyzer_test.py | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/third_party/libwebrtc/rtc_tools/py_event_log_analyzer/rtp_analyzer_test.py b/third_party/libwebrtc/rtc_tools/py_event_log_analyzer/rtp_analyzer_test.py new file mode 100755 index 0000000000..a078c3098f --- /dev/null +++ b/third_party/libwebrtc/rtc_tools/py_event_log_analyzer/rtp_analyzer_test.py @@ -0,0 +1,62 @@ +#!/usr/bin/env python3 +# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. +# +# Use of this source code is governed by a BSD-style license +# that can be found in the LICENSE file in the root of the source +# tree. An additional intellectual property rights grant can be found +# in the file PATENTS. All contributing project authors may +# be found in the AUTHORS file in the root of the source tree. +"""Run the tests with + + python rtp_analyzer_test.py +or + python3 rtp_analyzer_test.py +""" + +from __future__ import absolute_import +from __future__ import print_function +import collections +import unittest + +MISSING_NUMPY = False # pylint: disable=invalid-name +try: + import numpy + import rtp_analyzer +except ImportError: + MISSING_NUMPY = True + +FakePoint = collections.namedtuple("FakePoint", + ["real_send_time_ms", "absdelay"]) + + +class TestDelay(unittest.TestCase): + def AssertMaskEqual(self, masked_array, data, mask): + self.assertEqual(list(masked_array.data), data) + + if isinstance(masked_array.mask, numpy.bool_): + array_mask = masked_array.mask + else: + array_mask = list(masked_array.mask) + self.assertEqual(array_mask, mask) + + def testCalculateDelaySimple(self): + points = [FakePoint(0, 0), FakePoint(1, 0)] + mask = rtp_analyzer.CalculateDelay(0, 1, 1, points) + self.AssertMaskEqual(mask, [0, 0], False) + + def testCalculateDelayMissing(self): + points = [FakePoint(0, 0), FakePoint(2, 0)] + mask = rtp_analyzer.CalculateDelay(0, 2, 1, points) + self.AssertMaskEqual(mask, [0, -1, 0], [False, True, False]) + + def testCalculateDelayBorders(self): + points = [FakePoint(0, 0), FakePoint(2, 0)] + mask = rtp_analyzer.CalculateDelay(0, 3, 2, points) + self.AssertMaskEqual(mask, [0, 0, -1], [False, False, True]) + + +if __name__ == "__main__": + if MISSING_NUMPY: + print("Missing numpy, skipping test.") + else: + unittest.main() |