Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(38)

Side by Side Diff: webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc

Issue 1571283002: Fixes a bug which incorrectly logs incoming RTCP as outgoing. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 kMarkerBit(true) { 127 kMarkerBit(true) {
128 EXPECT_CALL(mock_paced_sender_, InsertPacket(_, _, _, _, _, _)) 128 EXPECT_CALL(mock_paced_sender_, InsertPacket(_, _, _, _, _, _))
129 .WillRepeatedly(testing::Return()); 129 .WillRepeatedly(testing::Return());
130 } 130 }
131 131
132 void SetUp() override { SetUpRtpSender(true); } 132 void SetUp() override { SetUpRtpSender(true); }
133 133
134 void SetUpRtpSender(bool pacer) { 134 void SetUpRtpSender(bool pacer) {
135 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport_, nullptr, 135 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport_, nullptr,
136 pacer ? &mock_paced_sender_ : nullptr, 136 pacer ? &mock_paced_sender_ : nullptr,
137 nullptr, nullptr, nullptr, nullptr, 137 nullptr, nullptr, nullptr, nullptr, nullptr,
138 nullptr)); 138 nullptr));
139 rtp_sender_->SetSequenceNumber(kSeqNum); 139 rtp_sender_->SetSequenceNumber(kSeqNum);
140 } 140 }
141 141
142 SimulatedClock fake_clock_; 142 SimulatedClock fake_clock_;
143 MockRtpPacketSender mock_paced_sender_; 143 MockRtpPacketSender mock_paced_sender_;
144 rtc::scoped_ptr<RTPSender> rtp_sender_; 144 rtc::scoped_ptr<RTPSender> rtp_sender_;
145 int payload_; 145 int payload_;
146 LoopbackTransportTest transport_; 146 LoopbackTransportTest transport_;
147 const bool kMarkerBit; 147 const bool kMarkerBit;
(...skipping 704 matching lines...) Expand 10 before | Expand all | Expand 10 after
852 EXPECT_EQ(0, rtp_header.extension.transmissionTimeOffset); 852 EXPECT_EQ(0, rtp_header.extension.transmissionTimeOffset);
853 uint64_t expected_send_time = 853 uint64_t expected_send_time =
854 ConvertMsToAbsSendTime(fake_clock_.TimeInMilliseconds()); 854 ConvertMsToAbsSendTime(fake_clock_.TimeInMilliseconds());
855 EXPECT_EQ(expected_send_time, rtp_header.extension.absoluteSendTime); 855 EXPECT_EQ(expected_send_time, rtp_header.extension.absoluteSendTime);
856 } 856 }
857 857
858 TEST_F(RtpSenderTest, SendRedundantPayloads) { 858 TEST_F(RtpSenderTest, SendRedundantPayloads) {
859 MockTransport transport; 859 MockTransport transport;
860 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport, nullptr, 860 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport, nullptr,
861 &mock_paced_sender_, nullptr, nullptr, 861 &mock_paced_sender_, nullptr, nullptr,
862 nullptr, nullptr, nullptr)); 862 nullptr, nullptr, nullptr, nullptr));
863 rtp_sender_->SetSequenceNumber(kSeqNum); 863 rtp_sender_->SetSequenceNumber(kSeqNum);
864 rtp_sender_->SetRtxPayloadType(kRtxPayload, kPayload); 864 rtp_sender_->SetRtxPayloadType(kRtxPayload, kPayload);
865 // Make all packets go through the pacer. 865 // Make all packets go through the pacer.
866 EXPECT_CALL(mock_paced_sender_, 866 EXPECT_CALL(mock_paced_sender_,
867 InsertPacket(RtpPacketSender::kNormalPriority, _, _, _, _, _)) 867 InsertPacket(RtpPacketSender::kNormalPriority, _, _, _, _, _))
868 .WillRepeatedly(testing::Return()); 868 .WillRepeatedly(testing::Return());
869 869
870 uint16_t seq_num = kSeqNum; 870 uint16_t seq_num = kSeqNum;
871 rtp_sender_->SetStorePacketsStatus(true, 10); 871 rtp_sender_->SetStorePacketsStatus(true, 10);
872 int32_t rtp_header_len = kRtpHeaderSize; 872 int32_t rtp_header_len = kRtpHeaderSize;
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
986 frame_counts_ = frame_counts; 986 frame_counts_ = frame_counts;
987 } 987 }
988 988
989 uint32_t num_calls_; 989 uint32_t num_calls_;
990 uint32_t ssrc_; 990 uint32_t ssrc_;
991 FrameCounts frame_counts_; 991 FrameCounts frame_counts_;
992 } callback; 992 } callback;
993 993
994 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport_, nullptr, 994 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport_, nullptr,
995 &mock_paced_sender_, nullptr, nullptr, 995 &mock_paced_sender_, nullptr, nullptr,
996 nullptr, &callback, nullptr)); 996 nullptr, &callback, nullptr, nullptr));
997 997
998 char payload_name[RTP_PAYLOAD_NAME_SIZE] = "GENERIC"; 998 char payload_name[RTP_PAYLOAD_NAME_SIZE] = "GENERIC";
999 const uint8_t payload_type = 127; 999 const uint8_t payload_type = 127;
1000 ASSERT_EQ(0, rtp_sender_->RegisterPayload(payload_name, payload_type, 90000, 1000 ASSERT_EQ(0, rtp_sender_->RegisterPayload(payload_name, payload_type, 90000,
1001 0, 1500)); 1001 0, 1500));
1002 uint8_t payload[] = {47, 11, 32, 93, 89}; 1002 uint8_t payload[] = {47, 11, 32, 93, 89};
1003 rtp_sender_->SetStorePacketsStatus(true, 1); 1003 rtp_sender_->SetStorePacketsStatus(true, 1);
1004 uint32_t ssrc = rtp_sender_->SSRC(); 1004 uint32_t ssrc = rtp_sender_->SSRC();
1005 1005
1006 ASSERT_EQ( 1006 ASSERT_EQ(
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1039 retransmit_stats_ = retransmit_stats; 1039 retransmit_stats_ = retransmit_stats;
1040 } 1040 }
1041 1041
1042 uint32_t num_calls_; 1042 uint32_t num_calls_;
1043 uint32_t ssrc_; 1043 uint32_t ssrc_;
1044 BitrateStatistics total_stats_; 1044 BitrateStatistics total_stats_;
1045 BitrateStatistics retransmit_stats_; 1045 BitrateStatistics retransmit_stats_;
1046 } callback; 1046 } callback;
1047 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport_, nullptr, 1047 rtp_sender_.reset(new RTPSender(false, &fake_clock_, &transport_, nullptr,
1048 nullptr, nullptr, nullptr, &callback, nullptr, 1048 nullptr, nullptr, nullptr, &callback, nullptr,
1049 nullptr)); 1049 nullptr, nullptr));
1050 1050
1051 // Simulate kNumPackets sent with kPacketInterval ms intervals. 1051 // Simulate kNumPackets sent with kPacketInterval ms intervals.
1052 const uint32_t kNumPackets = 15; 1052 const uint32_t kNumPackets = 15;
1053 const uint32_t kPacketInterval = 20; 1053 const uint32_t kPacketInterval = 20;
1054 // Overhead = 12 bytes RTP header + 1 byte generic header. 1054 // Overhead = 12 bytes RTP header + 1 byte generic header.
1055 const uint32_t kPacketOverhead = 13; 1055 const uint32_t kPacketOverhead = 13;
1056 1056
1057 char payload_name[RTP_PAYLOAD_NAME_SIZE] = "GENERIC"; 1057 char payload_name[RTP_PAYLOAD_NAME_SIZE] = "GENERIC";
1058 const uint8_t payload_type = 127; 1058 const uint8_t payload_type = 127;
1059 ASSERT_EQ(0, rtp_sender_->RegisterPayload(payload_name, payload_type, 90000, 1059 ASSERT_EQ(0, rtp_sender_->RegisterPayload(payload_name, payload_type, 90000,
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1092 } 1092 }
1093 1093
1094 class RtpSenderAudioTest : public RtpSenderTest { 1094 class RtpSenderAudioTest : public RtpSenderTest {
1095 protected: 1095 protected:
1096 RtpSenderAudioTest() {} 1096 RtpSenderAudioTest() {}
1097 1097
1098 void SetUp() override { 1098 void SetUp() override {
1099 payload_ = kAudioPayload; 1099 payload_ = kAudioPayload;
1100 rtp_sender_.reset(new RTPSender(true, &fake_clock_, &transport_, nullptr, 1100 rtp_sender_.reset(new RTPSender(true, &fake_clock_, &transport_, nullptr,
1101 nullptr, nullptr, nullptr, nullptr, nullptr, 1101 nullptr, nullptr, nullptr, nullptr, nullptr,
1102 nullptr)); 1102 nullptr, nullptr));
1103 rtp_sender_->SetSequenceNumber(kSeqNum); 1103 rtp_sender_->SetSequenceNumber(kSeqNum);
1104 } 1104 }
1105 }; 1105 };
1106 1106
1107 TEST_F(RtpSenderTestWithoutPacer, StreamDataCountersCallbacks) { 1107 TEST_F(RtpSenderTestWithoutPacer, StreamDataCountersCallbacks) {
1108 class TestCallback : public StreamDataCountersCallback { 1108 class TestCallback : public StreamDataCountersCallback {
1109 public: 1109 public:
1110 TestCallback() : StreamDataCountersCallback(), ssrc_(0), counters_() {} 1110 TestCallback() : StreamDataCountersCallback(), ssrc_(0), counters_() {}
1111 virtual ~TestCallback() {} 1111 virtual ~TestCallback() {}
1112 1112
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
1418 reinterpret_cast<uint8_t*>(transport_.sent_packets_[0]->data()), 1418 reinterpret_cast<uint8_t*>(transport_.sent_packets_[0]->data()),
1419 transport_.sent_packets_[0]->size(), true, &map, kSeqNum, hdr.rotation); 1419 transport_.sent_packets_[0]->size(), true, &map, kSeqNum, hdr.rotation);
1420 1420
1421 // Verify that this packet does have CVO byte. 1421 // Verify that this packet does have CVO byte.
1422 VerifyCVOPacket( 1422 VerifyCVOPacket(
1423 reinterpret_cast<uint8_t*>(transport_.sent_packets_[1]->data()), 1423 reinterpret_cast<uint8_t*>(transport_.sent_packets_[1]->data()),
1424 transport_.sent_packets_[1]->size(), true, &map, kSeqNum + 1, 1424 transport_.sent_packets_[1]->size(), true, &map, kSeqNum + 1,
1425 hdr.rotation); 1425 hdr.rotation);
1426 } 1426 }
1427 } // namespace webrtc 1427 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698