[rtp_rtcp] rtcp::Empty moved into own file and renamed to CompoundPacket on the way
Class renamed to indicated use of the rtcp::Empty class: it can only be used as container for other rtcp packets. All tests that use Append function moved from rtcp_packet_unittest, even if they did not use Empty class. This is because there is plan to make RtcpPacket class lighter by moving Append functionality to CompoundPacket class. BUG=webrtc:5260 R=åsapersson Review URL: https://codereview.webrtc.org/1582503002 Cr-Commit-Position: refs/heads/master@{#11234}
This commit is contained in:
@ -24,7 +24,6 @@ using ::testing::ElementsAre;
|
||||
using webrtc::rtcp::App;
|
||||
using webrtc::rtcp::Bye;
|
||||
using webrtc::rtcp::Dlrr;
|
||||
using webrtc::rtcp::Empty;
|
||||
using webrtc::rtcp::Fir;
|
||||
using webrtc::rtcp::RawPacket;
|
||||
using webrtc::rtcp::ReceiverReport;
|
||||
@ -305,90 +304,6 @@ TEST(RtcpPacketTest, Fir) {
|
||||
EXPECT_EQ(123U, parser.fir_item()->SeqNum());
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, AppendPacket) {
|
||||
Fir fir;
|
||||
ReportBlock rb;
|
||||
ReceiverReport rr;
|
||||
rr.From(kSenderSsrc);
|
||||
EXPECT_TRUE(rr.WithReportBlock(rb));
|
||||
rr.Append(&fir);
|
||||
|
||||
rtc::scoped_ptr<RawPacket> packet(rr.Build());
|
||||
RtcpPacketParser parser;
|
||||
parser.Parse(packet->Buffer(), packet->Length());
|
||||
EXPECT_EQ(1, parser.receiver_report()->num_packets());
|
||||
EXPECT_EQ(kSenderSsrc, parser.receiver_report()->Ssrc());
|
||||
EXPECT_EQ(1, parser.report_block()->num_packets());
|
||||
EXPECT_EQ(1, parser.fir()->num_packets());
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, AppendPacketOnEmpty) {
|
||||
Empty empty;
|
||||
ReceiverReport rr;
|
||||
rr.From(kSenderSsrc);
|
||||
empty.Append(&rr);
|
||||
|
||||
rtc::scoped_ptr<RawPacket> packet(empty.Build());
|
||||
RtcpPacketParser parser;
|
||||
parser.Parse(packet->Buffer(), packet->Length());
|
||||
EXPECT_EQ(1, parser.receiver_report()->num_packets());
|
||||
EXPECT_EQ(0, parser.report_block()->num_packets());
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, AppendPacketWithOwnAppendedPacket) {
|
||||
Fir fir;
|
||||
Bye bye;
|
||||
ReportBlock rb;
|
||||
|
||||
ReceiverReport rr;
|
||||
EXPECT_TRUE(rr.WithReportBlock(rb));
|
||||
rr.Append(&fir);
|
||||
|
||||
SenderReport sr;
|
||||
sr.Append(&bye);
|
||||
sr.Append(&rr);
|
||||
|
||||
rtc::scoped_ptr<RawPacket> packet(sr.Build());
|
||||
RtcpPacketParser parser;
|
||||
parser.Parse(packet->Buffer(), packet->Length());
|
||||
EXPECT_EQ(1, parser.sender_report()->num_packets());
|
||||
EXPECT_EQ(1, parser.receiver_report()->num_packets());
|
||||
EXPECT_EQ(1, parser.report_block()->num_packets());
|
||||
EXPECT_EQ(1, parser.bye()->num_packets());
|
||||
EXPECT_EQ(1, parser.fir()->num_packets());
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, BuildWithInputBuffer) {
|
||||
Fir fir;
|
||||
ReportBlock rb;
|
||||
ReceiverReport rr;
|
||||
rr.From(kSenderSsrc);
|
||||
EXPECT_TRUE(rr.WithReportBlock(rb));
|
||||
rr.Append(&fir);
|
||||
|
||||
const size_t kRrLength = 8;
|
||||
const size_t kReportBlockLength = 24;
|
||||
const size_t kFirLength = 20;
|
||||
|
||||
class Verifier : public rtcp::RtcpPacket::PacketReadyCallback {
|
||||
public:
|
||||
void OnPacketReady(uint8_t* data, size_t length) override {
|
||||
RtcpPacketParser parser;
|
||||
parser.Parse(data, length);
|
||||
EXPECT_EQ(1, parser.receiver_report()->num_packets());
|
||||
EXPECT_EQ(1, parser.report_block()->num_packets());
|
||||
EXPECT_EQ(1, parser.fir()->num_packets());
|
||||
++packets_created_;
|
||||
}
|
||||
|
||||
int packets_created_ = 0;
|
||||
} verifier;
|
||||
const size_t kBufferSize = kRrLength + kReportBlockLength + kFirLength;
|
||||
uint8_t buffer[kBufferSize];
|
||||
EXPECT_TRUE(rr.BuildExternalBuffer(buffer, kBufferSize, &verifier));
|
||||
EXPECT_EQ(1, verifier.packets_created_);
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, BuildWithTooSmallBuffer) {
|
||||
ReportBlock rb;
|
||||
ReceiverReport rr;
|
||||
@ -409,47 +324,6 @@ TEST(RtcpPacketTest, BuildWithTooSmallBuffer) {
|
||||
EXPECT_FALSE(rr.BuildExternalBuffer(buffer, kBufferSize, &verifier));
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, BuildWithTooSmallBuffer_FragmentedSend) {
|
||||
Fir fir;
|
||||
ReportBlock rb;
|
||||
ReceiverReport rr;
|
||||
rr.From(kSenderSsrc);
|
||||
EXPECT_TRUE(rr.WithReportBlock(rb));
|
||||
rr.Append(&fir);
|
||||
|
||||
const size_t kRrLength = 8;
|
||||
const size_t kReportBlockLength = 24;
|
||||
|
||||
class Verifier : public rtcp::RtcpPacket::PacketReadyCallback {
|
||||
public:
|
||||
void OnPacketReady(uint8_t* data, size_t length) override {
|
||||
RtcpPacketParser parser;
|
||||
parser.Parse(data, length);
|
||||
switch (packets_created_++) {
|
||||
case 0:
|
||||
EXPECT_EQ(1, parser.receiver_report()->num_packets());
|
||||
EXPECT_EQ(1, parser.report_block()->num_packets());
|
||||
EXPECT_EQ(0, parser.fir()->num_packets());
|
||||
break;
|
||||
case 1:
|
||||
EXPECT_EQ(0, parser.receiver_report()->num_packets());
|
||||
EXPECT_EQ(0, parser.report_block()->num_packets());
|
||||
EXPECT_EQ(1, parser.fir()->num_packets());
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "OnPacketReady not expected to be called "
|
||||
<< packets_created_ << " times.";
|
||||
}
|
||||
}
|
||||
|
||||
int packets_created_ = 0;
|
||||
} verifier;
|
||||
const size_t kBufferSize = kRrLength + kReportBlockLength;
|
||||
uint8_t buffer[kBufferSize];
|
||||
EXPECT_TRUE(rr.BuildExternalBuffer(buffer, kBufferSize, &verifier));
|
||||
EXPECT_EQ(2, verifier.packets_created_);
|
||||
}
|
||||
|
||||
TEST(RtcpPacketTest, Remb) {
|
||||
Remb remb;
|
||||
remb.From(kSenderSsrc);
|
||||
|
||||
Reference in New Issue
Block a user