#include "cast/streaming/impl/compound_rtcp_parser.h"
#include <chrono>
#include <cmath>
#include "cast/streaming/impl/rtcp_session.h"
#include "cast/streaming/testing/mock_compound_rtcp_parser_client.h"
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include "platform/api/time.h"
#include "platform/base/trivial_clock_traits.h"
#include "util/chrono_helpers.h"
_;
Invoke;
Mock;
SaveArg;
StrictMock;
namespace openscreen::cast {
namespace {
constexpr Ssrc kSenderSsrc{ … };
constexpr Ssrc kReceiverSsrc{ … };
}
class CompoundRtcpParserTest : public testing::Test { … };
TEST_F(CompoundRtcpParserTest, ProcessesEmptyPacket) { … }
TEST_F(CompoundRtcpParserTest, ReturnsErrorForGarbage) { … }
TEST_F(CompoundRtcpParserTest, ParsesReceiverReportWithoutReportBlock) { … }
TEST_F(CompoundRtcpParserTest, ParsesReceiverReportWithReportBlock) { … }
TEST_F(CompoundRtcpParserTest, ParsesPictureLossIndicatorMessage) { … }
TEST_F(CompoundRtcpParserTest, OnCastReceiverFrameLogMessages_ValidPacket) { … }
TEST_F(CompoundRtcpParserTest,
OnCastReceiverFrameLogMessages_MultiplePopulatedPackets) { … }
TEST_F(CompoundRtcpParserTest, OnCastReceiverFrameLogMessages_WrongName) { … }
TEST_F(CompoundRtcpParserTest, OnCastReceiverFrameLogMessages_InvalidSsrc) { … }
TEST_F(CompoundRtcpParserTest,
OnCastReceiverFrameLogMessages_InvalidPacketSize) { … }
TEST_F(CompoundRtcpParserTest, IgnoresStalePackets) { … }
TEST_F(CompoundRtcpParserTest, IgnoresUnknownExtendedReports) { … }
TEST_F(CompoundRtcpParserTest, ParsesSimpleFeedback) { … }
TEST_F(CompoundRtcpParserTest, ParsesFeedbackWithNacks) { … }
TEST_F(CompoundRtcpParserTest, ParsesFeedbackWithAcks) { … }
}