Index: media/cast/rtp_receiver/rtp_parser/rtp_parser_unittest.cc |
diff --git a/media/cast/rtp_receiver/rtp_parser/rtp_parser_unittest.cc b/media/cast/rtp_receiver/rtp_parser/rtp_parser_unittest.cc |
deleted file mode 100644 |
index b4478c37ee761d781d84f34ea69f5c35ba6faa5c..0000000000000000000000000000000000000000 |
--- a/media/cast/rtp_receiver/rtp_parser/rtp_parser_unittest.cc |
+++ /dev/null |
@@ -1,197 +0,0 @@ |
-// Copyright 2013 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "base/memory/scoped_ptr.h" |
-#include "base/rand_util.h" |
-#include "media/cast/rtp_receiver/rtp_parser/rtp_parser.h" |
-#include "media/cast/rtp_receiver/rtp_parser/test/rtp_packet_builder.h" |
-#include "media/cast/rtp_receiver/rtp_receiver_defines.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-namespace media { |
-namespace cast { |
- |
-static const size_t kPacketLength = 1500; |
-static const int kTestPayloadType = 127; |
-static const uint32 kTestSsrc = 1234; |
-static const uint32 kTestTimestamp = 111111; |
-static const uint16 kTestSeqNum = 4321; |
-static const uint8 kRefFrameId = 17; |
- |
-class RtpParserTest : public ::testing::Test { |
- protected: |
- RtpParserTest() : rtp_parser_(kTestSsrc, kTestPayloadType) { |
- packet_builder_.SetSsrc(kTestSsrc); |
- packet_builder_.SetSequenceNumber(kTestSeqNum); |
- packet_builder_.SetTimestamp(kTestTimestamp); |
- packet_builder_.SetPayloadType(kTestPayloadType); |
- packet_builder_.SetMarkerBit(true); // Only one packet. |
- cast_header_.sender_ssrc = kTestSsrc; |
- cast_header_.sequence_number = kTestSeqNum; |
- cast_header_.rtp_timestamp = kTestTimestamp; |
- cast_header_.payload_type = kTestPayloadType; |
- cast_header_.marker = true; |
- } |
- |
- virtual ~RtpParserTest() {} |
- |
- void ExpectParsesPacket() { |
- RtpCastHeader parsed_header; |
- const uint8* payload = NULL; |
- size_t payload_size = static_cast<size_t>(-1); |
- EXPECT_TRUE(rtp_parser_.ParsePacket( |
- packet_, kPacketLength, &parsed_header, &payload, &payload_size)); |
- |
- EXPECT_EQ(cast_header_.marker, parsed_header.marker); |
- EXPECT_EQ(cast_header_.payload_type, parsed_header.payload_type); |
- EXPECT_EQ(cast_header_.sequence_number, parsed_header.sequence_number); |
- EXPECT_EQ(cast_header_.rtp_timestamp, parsed_header.rtp_timestamp); |
- EXPECT_EQ(cast_header_.sender_ssrc, parsed_header.sender_ssrc); |
- |
- EXPECT_EQ(cast_header_.is_key_frame, parsed_header.is_key_frame); |
- EXPECT_EQ(cast_header_.frame_id, parsed_header.frame_id); |
- EXPECT_EQ(cast_header_.packet_id, parsed_header.packet_id); |
- EXPECT_EQ(cast_header_.max_packet_id, parsed_header.max_packet_id); |
- EXPECT_EQ(cast_header_.reference_frame_id, |
- parsed_header.reference_frame_id); |
- |
- EXPECT_TRUE(!!payload); |
- EXPECT_NE(static_cast<size_t>(-1), payload_size); |
- } |
- |
- void ExpectDoesNotParsePacket() { |
- RtpCastHeader parsed_header; |
- const uint8* payload = NULL; |
- size_t payload_size = static_cast<size_t>(-1); |
- EXPECT_FALSE(rtp_parser_.ParsePacket( |
- packet_, kPacketLength, &parsed_header, &payload, &payload_size)); |
- } |
- |
- RtpPacketBuilder packet_builder_; |
- uint8 packet_[kPacketLength]; |
- RtpParser rtp_parser_; |
- RtpCastHeader cast_header_; |
-}; |
- |
-TEST_F(RtpParserTest, ParseDefaultCastPacket) { |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- ExpectParsesPacket(); |
-} |
- |
-TEST_F(RtpParserTest, ParseNonDefaultCastPacket) { |
- packet_builder_.SetKeyFrame(true); |
- packet_builder_.SetFrameIds(10, 10); |
- packet_builder_.SetPacketId(5); |
- packet_builder_.SetMaxPacketId(15); |
- packet_builder_.SetMarkerBit(false); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.is_key_frame = true; |
- cast_header_.frame_id = 10; |
- cast_header_.reference_frame_id = 10; |
- cast_header_.packet_id = 5; |
- cast_header_.max_packet_id = 15; |
- cast_header_.marker = false; |
- ExpectParsesPacket(); |
-} |
- |
-TEST_F(RtpParserTest, TooBigPacketId) { |
- packet_builder_.SetKeyFrame(true); |
- packet_builder_.SetFrameIds(10, 10); |
- packet_builder_.SetPacketId(15); |
- packet_builder_.SetMaxPacketId(5); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.is_key_frame = true; |
- cast_header_.frame_id = 10; |
- cast_header_.reference_frame_id = 10; |
- cast_header_.packet_id = 15; |
- cast_header_.max_packet_id = 5; |
- ExpectDoesNotParsePacket(); |
-} |
- |
-TEST_F(RtpParserTest, MaxPacketId) { |
- packet_builder_.SetKeyFrame(true); |
- packet_builder_.SetFrameIds(10, 10); |
- packet_builder_.SetPacketId(65535); |
- packet_builder_.SetMaxPacketId(65535); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.is_key_frame = true; |
- cast_header_.frame_id = 10; |
- cast_header_.reference_frame_id = 10; |
- cast_header_.packet_id = 65535; |
- cast_header_.max_packet_id = 65535; |
- ExpectParsesPacket(); |
-} |
- |
-TEST_F(RtpParserTest, InvalidPayloadType) { |
- packet_builder_.SetKeyFrame(true); |
- packet_builder_.SetFrameIds(10, 10); |
- packet_builder_.SetPacketId(65535); |
- packet_builder_.SetMaxPacketId(65535); |
- packet_builder_.SetPayloadType(kTestPayloadType - 1); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.is_key_frame = true; |
- cast_header_.frame_id = 10; |
- cast_header_.reference_frame_id = 10; |
- cast_header_.packet_id = 65535; |
- cast_header_.max_packet_id = 65535; |
- cast_header_.payload_type = kTestPayloadType - 1; |
- ExpectDoesNotParsePacket(); |
-} |
- |
-TEST_F(RtpParserTest, InvalidSsrc) { |
- packet_builder_.SetKeyFrame(true); |
- packet_builder_.SetFrameIds(10, 10); |
- packet_builder_.SetPacketId(65535); |
- packet_builder_.SetMaxPacketId(65535); |
- packet_builder_.SetSsrc(kTestSsrc - 1); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.is_key_frame = true; |
- cast_header_.frame_id = 10; |
- cast_header_.reference_frame_id = 10; |
- cast_header_.packet_id = 65535; |
- cast_header_.max_packet_id = 65535; |
- cast_header_.sender_ssrc = kTestSsrc - 1; |
- ExpectDoesNotParsePacket(); |
-} |
- |
-TEST_F(RtpParserTest, ParseCastPacketWithSpecificFrameReference) { |
- packet_builder_.SetFrameIds(kRefFrameId + 3, kRefFrameId); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.frame_id = kRefFrameId + 3; |
- cast_header_.reference_frame_id = kRefFrameId; |
- ExpectParsesPacket(); |
-} |
- |
-TEST_F(RtpParserTest, ParseExpandingFrameIdTo32Bits) { |
- const uint32 kMaxFrameId = 1000; |
- packet_builder_.SetKeyFrame(true); |
- cast_header_.is_key_frame = true; |
- for (uint32 frame_id = 0; frame_id <= kMaxFrameId; ++frame_id) { |
- packet_builder_.SetFrameIds(frame_id, frame_id); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.frame_id = frame_id; |
- cast_header_.reference_frame_id = frame_id; |
- ExpectParsesPacket(); |
- } |
-} |
- |
-TEST_F(RtpParserTest, ParseExpandingReferenceFrameIdTo32Bits) { |
- const uint32 kMaxFrameId = 1000; |
- const uint32 kMaxBackReferenceOffset = 10; |
- packet_builder_.SetKeyFrame(false); |
- cast_header_.is_key_frame = false; |
- for (uint32 frame_id = kMaxBackReferenceOffset; |
- frame_id <= kMaxFrameId; ++frame_id) { |
- const uint32 reference_frame_id = |
- frame_id - base::RandInt(1, kMaxBackReferenceOffset); |
- packet_builder_.SetFrameIds(frame_id, reference_frame_id); |
- packet_builder_.BuildHeader(packet_, kPacketLength); |
- cast_header_.frame_id = frame_id; |
- cast_header_.reference_frame_id = reference_frame_id; |
- ExpectParsesPacket(); |
- } |
-} |
- |
-} // namespace cast |
-} // namespace media |