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

Unified Diff: net/quic/quic_framer_test.cc

Issue 887243005: Move is_fec_packet from QuicPacket to SerializedPacket in order to allow (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_framer.cc ('k') | net/quic/quic_protocol.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_framer_test.cc
diff --git a/net/quic/quic_framer_test.cc b/net/quic/quic_framer_test.cc
index 0fa4ce97359dc1c30af30d57c7170881cf454690..a85ec0a688c6ff8553378919b1bc7f0a62913101 100644
--- a/net/quic/quic_framer_test.cc
+++ b/net/quic/quic_framer_test.cc
@@ -171,11 +171,12 @@ class TestQuicVisitor : public ::net::QuicFramerVisitorInterface {
}
~TestQuicVisitor() override {
- STLDeleteElements(&stream_frames_);
+ stream_frames_.clear();
STLDeleteElements(&ack_frames_);
STLDeleteElements(&stop_waiting_frames_);
STLDeleteElements(&ping_frames_);
STLDeleteElements(&fec_data_);
+ STLDeleteElements(&stream_data_);
}
void OnError(QuicFramer* f) override {
@@ -223,7 +224,14 @@ class TestQuicVisitor : public ::net::QuicFramerVisitorInterface {
bool OnStreamFrame(const QuicStreamFrame& frame) override {
++frame_count_;
- stream_frames_.push_back(new QuicStreamFrame(frame));
+ // Save a copy of the data so it is valid after the packet is processed.
+ stream_data_.push_back(frame.GetDataAsString());
+ QuicStreamFrame stream_frame(frame);
+ // Make sure that the stream frame points to this data.
+ stream_frame.data.Clear();
+ stream_frame.data.Append(const_cast<char*>(stream_data_.back()->data()),
+ stream_data_.back()->size());
+ stream_frames_.push_back(stream_frame);
return true;
}
@@ -296,7 +304,7 @@ class TestQuicVisitor : public ::net::QuicFramerVisitorInterface {
scoped_ptr<QuicPacketPublicHeader> public_header_;
scoped_ptr<QuicPublicResetPacket> public_reset_packet_;
scoped_ptr<QuicVersionNegotiationPacket> version_negotiation_packet_;
- vector<QuicStreamFrame*> stream_frames_;
+ vector<QuicStreamFrame> stream_frames_;
vector<QuicAckFrame*> ack_frames_;
vector<QuicStopWaitingFrame*> stop_waiting_frames_;
vector<QuicPingFrame*> ping_frames_;
@@ -307,6 +315,7 @@ class TestQuicVisitor : public ::net::QuicFramerVisitorInterface {
QuicGoAwayFrame goaway_frame_;
QuicWindowUpdateFrame window_update_frame_;
QuicBlockedFrame blocked_frame_;
+ vector<string*> stream_data_;
};
class QuicFramerTest : public ::testing::TestWithParam<QuicVersion> {
@@ -406,8 +415,8 @@ class QuicFramerTest : public ::testing::TestWithParam<QuicVersion> {
}
// Checks if the supplied string matches data in the supplied StreamFrame.
- void CheckStreamFrameData(string str, QuicStreamFrame* frame) {
- scoped_ptr<string> frame_data(frame->GetDataAsString());
+ void CheckStreamFrameData(string str, const QuicStreamFrame& frame) {
+ scoped_ptr<string> frame_data(frame.GetDataAsString());
EXPECT_EQ(str, *frame_data);
}
@@ -1265,10 +1274,9 @@ TEST_P(QuicFramerTest, StreamFrame) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
EXPECT_EQ(static_cast<uint64>(0x01020304),
- visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
// Now test framing boundaries.
@@ -1312,11 +1320,9 @@ TEST_P(QuicFramerTest, StreamFrame3ByteStreamId) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
- EXPECT_EQ(GG_UINT64_C(0x00020304),
- visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ EXPECT_EQ(GG_UINT64_C(0x00020304), visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
// Now test framing boundaries.
@@ -1362,10 +1368,9 @@ TEST_P(QuicFramerTest, StreamFrame2ByteStreamId) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
EXPECT_EQ(static_cast<uint64>(0x00000304),
- visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
// Now test framing boundaries.
@@ -1411,10 +1416,9 @@ TEST_P(QuicFramerTest, StreamFrame1ByteStreamId) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
EXPECT_EQ(static_cast<uint64>(0x00000004),
- visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
// Now test framing boundaries.
@@ -1464,10 +1468,9 @@ TEST_P(QuicFramerTest, StreamFrameWithVersion) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
EXPECT_EQ(static_cast<uint64>(0x01020304),
- visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
// Now test framing boundaries.
@@ -1583,10 +1586,9 @@ TEST_P(QuicFramerTest, RevivedStreamFrame) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
- EXPECT_EQ(GG_UINT64_C(0x01020304), visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ EXPECT_EQ(GG_UINT64_C(0x01020304), visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
}
@@ -1639,10 +1641,9 @@ TEST_P(QuicFramerTest, StreamFrameInFecGroup) {
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
- EXPECT_EQ(GG_UINT64_C(0x01020304), visitor_.stream_frames_[0]->stream_id);
- EXPECT_TRUE(visitor_.stream_frames_[0]->fin);
- EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654),
- visitor_.stream_frames_[0]->offset);
+ EXPECT_EQ(GG_UINT64_C(0x01020304), visitor_.stream_frames_[0].stream_id);
+ EXPECT_TRUE(visitor_.stream_frames_[0].fin);
+ EXPECT_EQ(GG_UINT64_C(0xBA98FEDC32107654), visitor_.stream_frames_[0].offset);
CheckStreamFrameData("hello world!", visitor_.stream_frames_[0]);
}
@@ -3936,10 +3937,9 @@ TEST_P(QuicFramerTest, EncryptPacket) {
'm', 'n', 'o', 'p',
};
- scoped_ptr<QuicPacket> raw(
- QuicPacket::NewDataPacket(AsChars(packet), arraysize(packet), false,
- PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- PACKET_6BYTE_SEQUENCE_NUMBER));
+ scoped_ptr<QuicPacket> raw(new QuicPacket(
+ AsChars(packet), arraysize(packet), false, PACKET_8BYTE_CONNECTION_ID,
+ !kIncludeVersion, PACKET_6BYTE_SEQUENCE_NUMBER));
scoped_ptr<QuicEncryptedPacket> encrypted(
framer_.EncryptPacket(ENCRYPTION_NONE, sequence_number, *raw));
@@ -3972,10 +3972,9 @@ TEST_P(QuicFramerTest, EncryptPacketWithVersionFlag) {
'm', 'n', 'o', 'p',
};
- scoped_ptr<QuicPacket> raw(
- QuicPacket::NewDataPacket(AsChars(packet), arraysize(packet), false,
- PACKET_8BYTE_CONNECTION_ID, kIncludeVersion,
- PACKET_6BYTE_SEQUENCE_NUMBER));
+ scoped_ptr<QuicPacket> raw(new QuicPacket(
+ AsChars(packet), arraysize(packet), false, PACKET_8BYTE_CONNECTION_ID,
+ kIncludeVersion, PACKET_6BYTE_SEQUENCE_NUMBER));
scoped_ptr<QuicEncryptedPacket> encrypted(
framer_.EncryptPacket(ENCRYPTION_NONE, sequence_number, *raw));
« no previous file with comments | « net/quic/quic_framer.cc ('k') | net/quic/quic_protocol.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698