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

Unified Diff: net/quic/test_tools/quic_test_utils.cc

Issue 12806002: Land Recent QUIC Changes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: minor comment fix Created 7 years, 9 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/test_tools/quic_test_utils.h ('k') | net/quic/test_tools/simple_quic_framer.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/test_tools/quic_test_utils.cc
diff --git a/net/quic/test_tools/quic_test_utils.cc b/net/quic/test_tools/quic_test_utils.cc
index b1c2657b8cc7eebf72eaf455cf5148491687241b..6eef75c89beaca07d2060286b3b0cf254b24ee05 100644
--- a/net/quic/test_tools/quic_test_utils.cc
+++ b/net/quic/test_tools/quic_test_utils.cc
@@ -23,6 +23,10 @@ namespace test {
MockFramerVisitor::MockFramerVisitor() {
// By default, we want to accept packets.
+ ON_CALL(*this, OnProtocolVersionMismatch(_))
+ .WillByDefault(testing::Return(false));
+
+ // By default, we want to accept packets.
ON_CALL(*this, OnPacketHeader(_))
.WillByDefault(testing::Return(true));
}
@@ -30,6 +34,10 @@ MockFramerVisitor::MockFramerVisitor() {
MockFramerVisitor::~MockFramerVisitor() {
}
+bool NoOpFramerVisitor::OnProtocolVersionMismatch(QuicVersionTag version) {
+ return false;
+}
+
bool NoOpFramerVisitor::OnPacketHeader(const QuicPacketHeader& header) {
return true;
}
@@ -82,6 +90,12 @@ void FramerVisitorCapturingFrames::OnGoAwayFrame(const QuicGoAwayFrame& frame) {
++frame_count_;
}
+void FramerVisitorCapturingFrames::OnVersionNegotiationPacket(
+ const QuicVersionNegotiationPacket& packet) {
+ version_negotiation_packet_.reset(new QuicVersionNegotiationPacket(packet));
+ frame_count_ = 0;
+}
+
FramerVisitorCapturingPublicReset::FramerVisitorCapturingPublicReset() {
}
@@ -113,15 +127,18 @@ QuicRandom* MockHelper::GetRandomGenerator() {
return &random_generator_;
}
-MockConnection::MockConnection(QuicGuid guid, IPEndPoint address)
- : QuicConnection(guid, address, new MockHelper()),
+MockConnection::MockConnection(QuicGuid guid,
+ IPEndPoint address,
+ bool is_server)
+ : QuicConnection(guid, address, new MockHelper(), is_server),
helper_(helper()) {
}
MockConnection::MockConnection(QuicGuid guid,
IPEndPoint address,
- QuicConnectionHelperInterface* helper)
- : QuicConnection(guid, address, helper),
+ QuicConnectionHelperInterface* helper,
+ bool is_server)
+ : QuicConnection(guid, address, helper, is_server),
helper_(helper) {
}
@@ -129,8 +146,9 @@ MockConnection::~MockConnection() {
}
PacketSavingConnection::PacketSavingConnection(QuicGuid guid,
- IPEndPoint address)
- : MockConnection(guid, address) {
+ IPEndPoint address,
+ bool is_server)
+ : MockConnection(guid, address, is_server) {
}
PacketSavingConnection::~PacketSavingConnection() {
@@ -245,17 +263,19 @@ void CompareQuicDataWithHexError(
static QuicPacket* ConstructPacketFromHandshakeMessage(
QuicGuid guid,
- const CryptoHandshakeMessage& message) {
+ const CryptoHandshakeMessage& message,
+ bool should_include_version) {
CryptoFramer crypto_framer;
scoped_ptr<QuicData> data(crypto_framer.ConstructHandshakeMessage(message));
QuicFramer quic_framer(kQuicVersion1,
QuicDecrypter::Create(kNULL),
- QuicEncrypter::Create(kNULL));
+ QuicEncrypter::Create(kNULL),
+ false);
QuicPacketHeader header;
header.public_header.guid = guid;
header.public_header.reset_flag = false;
- header.public_header.version_flag = false;
+ header.public_header.version_flag = should_include_version;
header.packet_sequence_number = 1;
header.entropy_flag = false;
header.entropy_hash = 0;
@@ -275,7 +295,7 @@ static QuicPacket* ConstructPacketFromHandshakeMessage(
QuicPacket* ConstructHandshakePacket(QuicGuid guid, CryptoTag tag) {
CryptoHandshakeMessage message;
message.tag = tag;
- return ConstructPacketFromHandshakeMessage(guid, message);
+ return ConstructPacketFromHandshakeMessage(guid, message, false);
}
CryptoHandshakeMessage CreateChloMessage(const QuicClock* clock,
@@ -298,10 +318,12 @@ CryptoHandshakeMessage CreateChloMessage(const QuicClock* clock,
QuicPacket* ConstructClientHelloPacket(QuicGuid guid,
const QuicClock* clock,
QuicRandom* random_generator,
- const string& server_hostname) {
+ const string& server_hostname,
+ bool should_include_version) {
CryptoHandshakeMessage chlo = CreateChloMessage(clock, random_generator,
server_hostname);
- return ConstructPacketFromHandshakeMessage(guid, chlo);
+ return ConstructPacketFromHandshakeMessage(
+ guid, chlo, should_include_version);
}
CryptoHandshakeMessage CreateShloMessage(const QuicClock* clock,
@@ -344,10 +366,11 @@ QuicPacket* ConstructServerHelloPacket(QuicGuid guid,
const string& server_hostname) {
CryptoHandshakeMessage shlo =
CreateShloMessage(clock, random_generator, server_hostname);
- return ConstructPacketFromHandshakeMessage(guid, shlo);
+ return ConstructPacketFromHandshakeMessage(guid, shlo, false);
}
size_t GetPacketLengthForOneStream(bool include_version, size_t payload) {
+ // TODO(wtc): the hardcoded use of NullEncrypter here seems wrong.
return NullEncrypter().GetCiphertextSize(payload) +
QuicPacketCreator::StreamFramePacketOverhead(1, include_version);
}
« no previous file with comments | « net/quic/test_tools/quic_test_utils.h ('k') | net/quic/test_tools/simple_quic_framer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698