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

Side by Side Diff: webrtc/video/end_to_end_tests.cc

Issue 2070673002: Test RtcpParser rewritten to use rtcp packet classes (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: reinterpret_cast -> static_cast Created 4 years, 3 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) 2013 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2013 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 #include <algorithm> 10 #include <algorithm>
(...skipping 728 matching lines...) Expand 10 before | Expand all | Expand 10 after
739 break; 739 break;
740 } 740 }
741 return SEND_PACKET; 741 return SEND_PACKET;
742 } 742 }
743 743
744 Action OnReceiveRtcp(const uint8_t* packet, size_t length) override { 744 Action OnReceiveRtcp(const uint8_t* packet, size_t length) override {
745 rtc::CritScope lock_(&crit_); 745 rtc::CritScope lock_(&crit_);
746 if (state_ == kVerifyFecPacketNotInNackList) { 746 if (state_ == kVerifyFecPacketNotInNackList) {
747 test::RtcpPacketParser rtcp_parser; 747 test::RtcpPacketParser rtcp_parser;
748 rtcp_parser.Parse(packet, length); 748 rtcp_parser.Parse(packet, length);
749 std::vector<uint16_t> nacks = rtcp_parser.nack_item()->last_nack_list(); 749 const std::vector<uint16_t>& nacks = rtcp_parser.nack()->packet_ids();
750 EXPECT_TRUE(std::find(nacks.begin(), nacks.end(), 750 EXPECT_TRUE(std::find(nacks.begin(), nacks.end(),
751 fec_sequence_number_) == nacks.end()) 751 fec_sequence_number_) == nacks.end())
752 << "Got nack for FEC packet"; 752 << "Got nack for FEC packet";
753 if (!nacks.empty() && 753 if (!nacks.empty() &&
754 IsNewerSequenceNumber(nacks.back(), fec_sequence_number_)) { 754 IsNewerSequenceNumber(nacks.back(), fec_sequence_number_)) {
755 observation_complete_.Set(); 755 observation_complete_.Set();
756 } 756 }
757 } 757 }
758 return SEND_PACKET; 758 return SEND_PACKET;
759 } 759 }
(...skipping 1267 matching lines...) Expand 10 before | Expand all | Expand 10 after
2027 return DROP_PACKET; 2027 return DROP_PACKET;
2028 } 2028 }
2029 VerifyStats(); 2029 VerifyStats();
2030 return SEND_PACKET; 2030 return SEND_PACKET;
2031 } 2031 }
2032 2032
2033 Action OnReceiveRtcp(const uint8_t* packet, size_t length) override { 2033 Action OnReceiveRtcp(const uint8_t* packet, size_t length) override {
2034 rtc::CritScope lock(&crit_); 2034 rtc::CritScope lock(&crit_);
2035 test::RtcpPacketParser rtcp_parser; 2035 test::RtcpPacketParser rtcp_parser;
2036 rtcp_parser.Parse(packet, length); 2036 rtcp_parser.Parse(packet, length);
2037 std::vector<uint16_t> nacks = rtcp_parser.nack_item()->last_nack_list(); 2037 const std::vector<uint16_t>& nacks = rtcp_parser.nack()->packet_ids();
2038 if (!nacks.empty() && std::find( 2038 if (!nacks.empty() && std::find(
2039 nacks.begin(), nacks.end(), dropped_rtp_packet_) != nacks.end()) { 2039 nacks.begin(), nacks.end(), dropped_rtp_packet_) != nacks.end()) {
2040 dropped_rtp_packet_requested_ = true; 2040 dropped_rtp_packet_requested_ = true;
2041 } 2041 }
2042 return SEND_PACKET; 2042 return SEND_PACKET;
2043 } 2043 }
2044 2044
2045 void VerifyStats() EXCLUSIVE_LOCKS_REQUIRED(&crit_) { 2045 void VerifyStats() EXCLUSIVE_LOCKS_REQUIRED(&crit_) {
2046 if (!dropped_rtp_packet_requested_) 2046 if (!dropped_rtp_packet_requested_)
2047 return; 2047 return;
(...skipping 1100 matching lines...) Expand 10 before | Expand all | Expand 10 after
3148 } 3148 }
3149 } 3149 }
3150 3150
3151 return SEND_PACKET; 3151 return SEND_PACKET;
3152 } 3152 }
3153 3153
3154 Action OnSendRtcp(const uint8_t* packet, size_t length) override { 3154 Action OnSendRtcp(const uint8_t* packet, size_t length) override {
3155 test::RtcpPacketParser rtcp_parser; 3155 test::RtcpPacketParser rtcp_parser;
3156 rtcp_parser.Parse(packet, length); 3156 rtcp_parser.Parse(packet, length);
3157 if (rtcp_parser.sender_report()->num_packets() > 0) { 3157 if (rtcp_parser.sender_report()->num_packets() > 0) {
3158 uint32_t ssrc = rtcp_parser.sender_report()->Ssrc(); 3158 uint32_t ssrc = rtcp_parser.sender_report()->sender_ssrc();
3159 uint32_t rtcp_timestamp = rtcp_parser.sender_report()->RtpTimestamp(); 3159 uint32_t rtcp_timestamp = rtcp_parser.sender_report()->rtp_timestamp();
3160 3160
3161 rtc::CritScope lock(&crit_); 3161 rtc::CritScope lock(&crit_);
3162 ValidateTimestampGap(ssrc, rtcp_timestamp, false); 3162 ValidateTimestampGap(ssrc, rtcp_timestamp, false);
3163 } 3163 }
3164 return SEND_PACKET; 3164 return SEND_PACKET;
3165 } 3165 }
3166 3166
3167 SequenceNumberUnwrapper seq_numbers_unwrapper_; 3167 SequenceNumberUnwrapper seq_numbers_unwrapper_;
3168 std::map<uint32_t, std::list<int64_t>> last_observed_seq_numbers_; 3168 std::map<uint32_t, std::list<int64_t>> last_observed_seq_numbers_;
3169 std::map<uint32_t, uint32_t> last_observed_timestamp_; 3169 std::map<uint32_t, uint32_t> last_observed_timestamp_;
(...skipping 564 matching lines...) Expand 10 before | Expand all | Expand 10 after
3734 private: 3734 private:
3735 bool video_observed_; 3735 bool video_observed_;
3736 bool audio_observed_; 3736 bool audio_observed_;
3737 SequenceNumberUnwrapper unwrapper_; 3737 SequenceNumberUnwrapper unwrapper_;
3738 std::set<int64_t> received_packet_ids_; 3738 std::set<int64_t> received_packet_ids_;
3739 } test; 3739 } test;
3740 3740
3741 RunBaseTest(&test); 3741 RunBaseTest(&test);
3742 } 3742 }
3743 } // namespace webrtc 3743 } // namespace webrtc
OLDNEW
« webrtc/test/rtcp_packet_parser.cc ('K') | « webrtc/test/rtcp_packet_parser.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698