Trigger rtt and stats update on report block rather than receiver report.
ReportBlock is the the real receiver report. Triggering rtt update on ReportBlock support clients that send receiver report blocks attached to SenderReport rather than ReceiverReport. Bug: webrtc:7996 Change-Id: Ie826fa09fd1bf0e5256e995649f66811b5192761 Reviewed-on: https://webrtc-review.googlesource.com/4040 Reviewed-by: Åsa Persson <asapersson@webrtc.org> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20014}
This commit is contained in:

committed by
Commit Bot

parent
cff9ee650e
commit
760c4b4da9
@ -274,7 +274,6 @@ TEST_F(RtcpReceiverTest, InjectRrPacket) {
|
||||
OnReceivedRtcpReceiverReport(IsEmpty(), _, now));
|
||||
InjectRtcpPacket(rr);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReceiverReport());
|
||||
std::vector<RTCPReportBlock> report_blocks;
|
||||
rtcp_receiver_.StatisticsReceived(&report_blocks);
|
||||
EXPECT_TRUE(report_blocks.empty());
|
||||
@ -293,7 +292,7 @@ TEST_F(RtcpReceiverTest, InjectRrPacketWithReportBlockNotToUsIgnored) {
|
||||
OnReceivedRtcpReceiverReport(IsEmpty(), _, now));
|
||||
InjectRtcpPacket(rr);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReceiverReport());
|
||||
EXPECT_EQ(0, rtcp_receiver_.LastReceivedReportBlockMs());
|
||||
std::vector<RTCPReportBlock> received_blocks;
|
||||
rtcp_receiver_.StatisticsReceived(&received_blocks);
|
||||
EXPECT_TRUE(received_blocks.empty());
|
||||
@ -313,7 +312,27 @@ TEST_F(RtcpReceiverTest, InjectRrPacketWithOneReportBlock) {
|
||||
OnReceivedRtcpReceiverReport(SizeIs(1), _, now));
|
||||
InjectRtcpPacket(rr);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReceiverReport());
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReportBlockMs());
|
||||
std::vector<RTCPReportBlock> received_blocks;
|
||||
rtcp_receiver_.StatisticsReceived(&received_blocks);
|
||||
EXPECT_EQ(1u, received_blocks.size());
|
||||
}
|
||||
|
||||
TEST_F(RtcpReceiverTest, InjectSrPacketWithOneReportBlock) {
|
||||
int64_t now = system_clock_.TimeInMilliseconds();
|
||||
|
||||
rtcp::ReportBlock rb;
|
||||
rb.SetMediaSsrc(kReceiverMainSsrc);
|
||||
rtcp::SenderReport sr;
|
||||
sr.SetSenderSsrc(kSenderSsrc);
|
||||
sr.AddReportBlock(rb);
|
||||
|
||||
EXPECT_CALL(rtp_rtcp_impl_, OnReceivedRtcpReportBlocks(SizeIs(1)));
|
||||
EXPECT_CALL(bandwidth_observer_,
|
||||
OnReceivedRtcpReceiverReport(SizeIs(1), _, now));
|
||||
InjectRtcpPacket(sr);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReportBlockMs());
|
||||
std::vector<RTCPReportBlock> received_blocks;
|
||||
rtcp_receiver_.StatisticsReceived(&received_blocks);
|
||||
EXPECT_EQ(1u, received_blocks.size());
|
||||
@ -345,7 +364,7 @@ TEST_F(RtcpReceiverTest, InjectRrPacketWithTwoReportBlocks) {
|
||||
OnReceivedRtcpReceiverReport(SizeIs(2), _, now));
|
||||
InjectRtcpPacket(rr1);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReceiverReport());
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReportBlockMs());
|
||||
std::vector<RTCPReportBlock> received_blocks;
|
||||
rtcp_receiver_.StatisticsReceived(&received_blocks);
|
||||
EXPECT_THAT(received_blocks,
|
||||
@ -419,7 +438,7 @@ TEST_F(RtcpReceiverTest, InjectRrPacketsFromTwoRemoteSsrcs) {
|
||||
OnReceivedRtcpReceiverReport(SizeIs(1), _, now));
|
||||
InjectRtcpPacket(rr1);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReceiverReport());
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReportBlockMs());
|
||||
|
||||
std::vector<RTCPReportBlock> received_blocks;
|
||||
rtcp_receiver_.StatisticsReceived(&received_blocks);
|
||||
@ -486,7 +505,7 @@ TEST_F(RtcpReceiverTest, GetRtt) {
|
||||
EXPECT_CALL(bandwidth_observer_, OnReceivedRtcpReceiverReport(_, _, _));
|
||||
InjectRtcpPacket(rr);
|
||||
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReceiverReport());
|
||||
EXPECT_EQ(now, rtcp_receiver_.LastReceivedReportBlockMs());
|
||||
EXPECT_EQ(
|
||||
0, rtcp_receiver_.RTT(kSenderSsrc, nullptr, nullptr, nullptr, nullptr));
|
||||
}
|
||||
|
Reference in New Issue
Block a user