summaryrefslogtreecommitdiffstats
path: root/net/quic
diff options
context:
space:
mode:
authorrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-22 17:25:39 +0000
committerrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-22 17:25:39 +0000
commitb1f287dcf708ce1257acc0cffa1813f7c249150b (patch)
tree59ed646268feccb0fb79c9b448b8121123c2ebed /net/quic
parentbeb1b69b805041bdb66c187c650b07d6633d73df (diff)
downloadchromium_src-b1f287dcf708ce1257acc0cffa1813f7c249150b.zip
chromium_src-b1f287dcf708ce1257acc0cffa1813f7c249150b.tar.gz
chromium_src-b1f287dcf708ce1257acc0cffa1813f7c249150b.tar.bz2
Move all test Peer classes to the test namespace. Move the QuicConnectionPeer to quic_test_utils since it is shared. This is an important issue for Chrome, because all the tests are linked togeter which means that multiple definitions of the same class is problematic.
Merge internal change: 40150045 TBR=jar@chromium.org Review URL: https://chromiumcodereview.appspot.com/11648039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174533 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/quic')
-rw-r--r--net/quic/quic_connection.h6
-rw-r--r--net/quic/quic_connection_helper.h6
-rw-r--r--net/quic/quic_connection_helper_test.cc15
-rw-r--r--net/quic/quic_connection_test.cc26
-rw-r--r--net/quic/quic_http_stream_test.cc16
-rw-r--r--net/quic/quic_session.h6
-rw-r--r--net/quic/quic_stream_sequencer.h6
-rw-r--r--net/quic/quic_stream_sequencer_test.cc3
-rw-r--r--net/quic/reliable_quic_stream.h6
-rw-r--r--net/quic/test_tools/quic_connection_peer.cc43
-rw-r--r--net/quic/test_tools/quic_connection_peer.h43
-rw-r--r--net/quic/test_tools/quic_session_peer.cc18
-rw-r--r--net/quic/test_tools/quic_session_peer.h27
-rw-r--r--net/quic/test_tools/reliable_quic_stream_peer.cc25
-rw-r--r--net/quic/test_tools/reliable_quic_stream_peer.h29
15 files changed, 215 insertions, 60 deletions
diff --git a/net/quic/quic_connection.h b/net/quic/quic_connection.h
index 442e200..9d41db7 100644
--- a/net/quic/quic_connection.h
+++ b/net/quic/quic_connection.h
@@ -37,6 +37,10 @@ class QuicRandom;
class QuicReceiptMetricsCollector;
class QuicSendScheduler;
+namespace test {
+class QuicConnectionPeer;
+} // namespace test
+
class NET_EXPORT_PRIVATE QuicConnectionVisitorInterface {
public:
typedef std::set<QuicPacketSequenceNumber> AckedPackets;
@@ -238,7 +242,7 @@ class NET_EXPORT_PRIVATE QuicConnection : public QuicFramerVisitorInterface {
QuicConnectionHelperInterface* helper() { return helper_; }
private:
- friend class QuicConnectionPeer;
+ friend class test::QuicConnectionPeer;
// Packets which have not been written to the wire.
struct QueuedPacket {
QueuedPacket(QuicPacketSequenceNumber sequence_number,
diff --git a/net/quic/quic_connection_helper.h b/net/quic/quic_connection_helper.h
index 777e2f7..22585ae 100644
--- a/net/quic/quic_connection_helper.h
+++ b/net/quic/quic_connection_helper.h
@@ -27,6 +27,10 @@ namespace net {
class QuicClock;
class QuicRandom;
+namespace test {
+class QuicConnectionHelperPeer;
+} // namespace test
+
class NET_EXPORT_PRIVATE QuicConnectionHelper
: public QuicConnectionHelperInterface {
public:
@@ -56,7 +60,7 @@ class NET_EXPORT_PRIVATE QuicConnectionHelper
void GetPeerAddress(IPEndPoint* peer_address);
private:
- friend class QuicConnectionHelperPeer;
+ friend class test::QuicConnectionHelperPeer;
// An alarm is scheduled for each data-bearing packet as it is sent out.
// When the alarm goes off, the connection checks to see if the packet has
diff --git a/net/quic/quic_connection_helper_test.cc b/net/quic/quic_connection_helper_test.cc
index 5557e8a..f255e5f 100644
--- a/net/quic/quic_connection_helper_test.cc
+++ b/net/quic/quic_connection_helper_test.cc
@@ -8,6 +8,7 @@
#include "net/base/net_errors.h"
#include "net/quic/test_tools/mock_clock.h"
+#include "net/quic/test_tools/quic_connection_peer.h"
#include "net/quic/test_tools/quic_test_utils.h"
#include "net/quic/test_tools/test_task_runner.h"
#include "net/socket/socket_test_util.h"
@@ -17,19 +18,6 @@
using testing::_;
namespace net {
-
-class QuicConnectionPeer {
- public:
- static void SendAck(QuicConnection* connection) {
- connection->SendAck();
- }
-
- static void SetScheduler(QuicConnection* connection,
- QuicSendScheduler* scheduler) {
- connection->scheduler_.reset(scheduler);
- }
-};
-
namespace test {
const char kData[] = "foo";
@@ -342,5 +330,4 @@ TEST_F(QuicConnectionHelperTest, SendSchedulerDelayThenSend) {
}
} // namespace test
-
} // namespace net
diff --git a/net/quic/quic_connection_test.cc b/net/quic/quic_connection_test.cc
index c8e54ad..6d1f805 100644
--- a/net/quic/quic_connection_test.cc
+++ b/net/quic/quic_connection_test.cc
@@ -11,6 +11,7 @@
#include "net/quic/crypto/quic_decrypter.h"
#include "net/quic/crypto/quic_encrypter.h"
#include "net/quic/test_tools/mock_clock.h"
+#include "net/quic/test_tools/quic_connection_peer.h"
#include "net/quic/test_tools/quic_test_utils.h"
#include "net/quic/quic_utils.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -24,31 +25,6 @@ using testing::Return;
using testing::StrictMock;
namespace net {
-
-// Peer to make public a number of otherwise private QuicConnection methods.
-class QuicConnectionPeer {
- public:
- static void SendAck(QuicConnection* connection) {
- connection->SendAck();
- }
-
- static void SetCollector(QuicConnection* connection,
- QuicReceiptMetricsCollector* collector) {
- connection->collector_.reset(collector);
- }
-
- static void SetScheduler(QuicConnection* connection,
- QuicSendScheduler* scheduler) {
- connection->scheduler_.reset(scheduler);
- }
- static QuicAckFrame* GetOutgoingAck(QuicConnection* connection) {
- return &connection->outgoing_ack_;
- }
-
- private:
- DISALLOW_COPY_AND_ASSIGN(QuicConnectionPeer);
-};
-
namespace test {
namespace {
diff --git a/net/quic/quic_http_stream_test.cc b/net/quic/quic_http_stream_test.cc
index 9c4c19a..ff8a749 100644
--- a/net/quic/quic_http_stream_test.cc
+++ b/net/quic/quic_http_stream_test.cc
@@ -15,6 +15,7 @@
#include "net/quic/quic_connection.h"
#include "net/quic/quic_connection_helper.h"
#include "net/quic/test_tools/mock_clock.h"
+#include "net/quic/test_tools/quic_connection_peer.h"
#include "net/quic/test_tools/quic_test_utils.h"
#include "net/quic/test_tools/test_task_runner.h"
#include "net/socket/socket_test_util.h"
@@ -24,22 +25,7 @@
using testing::_;
namespace net {
-
-class QuicConnectionPeer {
- public:
- static void SetScheduler(QuicConnection* connection,
- QuicSendScheduler* scheduler) {
- connection->scheduler_.reset(scheduler);
- }
-
- static void SetCollector(QuicConnection* connection,
- QuicReceiptMetricsCollector* collector) {
- connection->collector_.reset(collector);
- }
-};
-
namespace test {
-
namespace {
const char kUploadData[] = "hello world!";
diff --git a/net/quic/quic_session.h b/net/quic/quic_session.h
index 70c26f4..4b03e25 100644
--- a/net/quic/quic_session.h
+++ b/net/quic/quic_session.h
@@ -23,6 +23,10 @@ namespace net {
class QuicCryptoStream;
class ReliableQuicStream;
+namespace test {
+class QuicSessionPeer;
+} // namespace test
+
class NET_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface {
public:
QuicSession(QuicConnection* connection, bool is_server);
@@ -106,7 +110,7 @@ class NET_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface {
}
private:
- friend class QuicSessionPeer;
+ friend class test::QuicSessionPeer;
typedef base::hash_map<QuicStreamId, ReliableQuicStream*> ReliableStreamMap;
diff --git a/net/quic/quic_stream_sequencer.h b/net/quic/quic_stream_sequencer.h
index 4f5463e..37da13e 100644
--- a/net/quic/quic_stream_sequencer.h
+++ b/net/quic/quic_stream_sequencer.h
@@ -16,6 +16,10 @@ using std::string;
namespace net {
+namespace test {
+class QuicStreamSequencerPeer;
+} // namespace test
+
class QuicSession;
class ReliableQuicStream;
@@ -60,7 +64,7 @@ class NET_EXPORT_PRIVATE QuicStreamSequencer {
bool IsClosed() const;
private:
- friend class QuicStreamSequencerPeer;
+ friend class test::QuicStreamSequencerPeer;
// TODO(alyssar) use something better than strings.
typedef map<QuicStreamOffset, string> FrameMap;
diff --git a/net/quic/quic_stream_sequencer_test.cc b/net/quic/quic_stream_sequencer_test.cc
index c1ae86a..7d22c4c 100644
--- a/net/quic/quic_stream_sequencer_test.cc
+++ b/net/quic/quic_stream_sequencer_test.cc
@@ -23,6 +23,7 @@ using testing::Return;
using testing::StrEq;
namespace net {
+namespace test {
class QuicStreamSequencerPeer : public QuicStreamSequencer {
public:
@@ -403,5 +404,5 @@ TEST_F(QuicSequencerRandomTest, RandomFramesDroppingNoBackup) {
}
} // namespace
-
+} // namespace test
} // namespace net
diff --git a/net/quic/reliable_quic_stream.h b/net/quic/reliable_quic_stream.h
index fa0c832..bfe7fea 100644
--- a/net/quic/reliable_quic_stream.h
+++ b/net/quic/reliable_quic_stream.h
@@ -15,6 +15,10 @@
namespace net {
+namespace test {
+class ReliableQuicStreamPeer;
+} // namespace test
+
class IPEndPoint;
class QuicSession;
@@ -88,7 +92,7 @@ class NET_EXPORT_PRIVATE ReliableQuicStream {
int WriteDataInternal(base::StringPiece data, bool fin);
private:
- friend class ReliableQuicStreamPeer;
+ friend class test::ReliableQuicStreamPeer;
friend class QuicStreamUtils;
std::list<string> queued_data_;
diff --git a/net/quic/test_tools/quic_connection_peer.cc b/net/quic/test_tools/quic_connection_peer.cc
new file mode 100644
index 0000000..93a5be3
--- /dev/null
+++ b/net/quic/test_tools/quic_connection_peer.cc
@@ -0,0 +1,43 @@
+// Copyright (c) 2012 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 "net/quic/test_tools/quic_connection_peer.h"
+
+#include "net/quic/congestion_control/quic_receipt_metrics_collector.h"
+#include "net/quic/congestion_control/quic_send_scheduler.h"
+#include "net/quic/quic_connection.h"
+
+namespace net {
+namespace test {
+
+// static
+void QuicConnectionPeer::SendAck(QuicConnection* connection) {
+ connection->SendAck();
+}
+
+// static
+void QuicConnectionPeer::SetCollector(QuicConnection* connection,
+ QuicReceiptMetricsCollector* collector) {
+ connection->collector_.reset(collector);
+}
+
+// static
+void QuicConnectionPeer::SetScheduler(QuicConnection* connection,
+ QuicSendScheduler* scheduler) {
+ connection->scheduler_.reset(scheduler);
+}
+
+// static
+QuicAckFrame* QuicConnectionPeer::GetOutgoingAck(QuicConnection* connection) {
+ return &connection->outgoing_ack_;
+}
+
+// static
+QuicConnectionVisitorInterface* QuicConnectionPeer::GetVisitor(
+ QuicConnection* connection) {
+ return connection->visitor_;
+}
+
+} // namespace test
+} // namespace net
diff --git a/net/quic/test_tools/quic_connection_peer.h b/net/quic/test_tools/quic_connection_peer.h
new file mode 100644
index 0000000..d54b38e
--- /dev/null
+++ b/net/quic/test_tools/quic_connection_peer.h
@@ -0,0 +1,43 @@
+// Copyright (c) 2012 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.
+
+#ifndef NET_QUIC_TEST_TOOLS_QUIC_CONNECTION_PEER_H_
+#define NET_QUIC_TEST_TOOLS_QUIC_CONNECTION_PEER_H_
+
+#include "base/basictypes.h"
+
+namespace net {
+
+struct QuicAckFrame;
+class QuicConnection;
+class QuicConnectionVisitorInterface;
+class QuicReceiptMetricsCollector;
+class QuicSendScheduler;
+
+namespace test {
+
+// Peer to make public a number of otherwise private QuicConnection methods.
+class QuicConnectionPeer {
+ public:
+ static void SendAck(QuicConnection* connection);
+
+ static void SetCollector(QuicConnection* connection,
+ QuicReceiptMetricsCollector* collector);
+
+ static void SetScheduler(QuicConnection* connection,
+ QuicSendScheduler* scheduler);
+
+ static QuicAckFrame* GetOutgoingAck(QuicConnection* connection);
+
+ static QuicConnectionVisitorInterface* GetVisitor(
+ QuicConnection* connection);
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(QuicConnectionPeer);
+};
+
+} // namespace test
+} // namespace net
+
+#endif // NET_QUIC_TEST_TOOLS_QUIC_TEST_PEER_H_
diff --git a/net/quic/test_tools/quic_session_peer.cc b/net/quic/test_tools/quic_session_peer.cc
new file mode 100644
index 0000000..16b5c41
--- /dev/null
+++ b/net/quic/test_tools/quic_session_peer.cc
@@ -0,0 +1,18 @@
+// Copyright (c) 2012 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 "net/quic/test_tools/quic_session_peer.h"
+
+#include "net/quic/quic_session.h"
+
+namespace net {
+namespace test {
+
+// static
+void QuicSessionPeer::SetNextStreamId(QuicStreamId id, QuicSession* session) {
+ session->next_stream_id_ = id;
+}
+
+} // namespace test
+} // namespace net
diff --git a/net/quic/test_tools/quic_session_peer.h b/net/quic/test_tools/quic_session_peer.h
new file mode 100644
index 0000000..16b0c21
--- /dev/null
+++ b/net/quic/test_tools/quic_session_peer.h
@@ -0,0 +1,27 @@
+// Copyright (c) 2012 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.
+
+#ifndef NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_
+#define NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_
+
+#include "net/quic/quic_protocol.h"
+
+namespace net {
+
+class QuicSession;
+
+namespace test {
+
+class QuicSessionPeer {
+ public:
+ static void SetNextStreamId(QuicStreamId id, QuicSession* session);
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(QuicSessionPeer);
+};
+
+} // namespace test
+} // namespace net
+
+#endif // NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_
diff --git a/net/quic/test_tools/reliable_quic_stream_peer.cc b/net/quic/test_tools/reliable_quic_stream_peer.cc
new file mode 100644
index 0000000..12ceca2
--- /dev/null
+++ b/net/quic/test_tools/reliable_quic_stream_peer.cc
@@ -0,0 +1,25 @@
+// Copyright (c) 2012 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 "net/quic/test_tools/reliable_quic_stream_peer.h"
+
+#include "net/quic/reliable_quic_stream.h"
+
+namespace net {
+namespace test {
+
+// static
+void ReliableQuicStreamPeer::SetWriteSideClosed(bool value,
+ ReliableQuicStream* stream) {
+ stream->write_side_closed_ = value;
+}
+
+// static
+void ReliableQuicStreamPeer::SetOffset(QuicStreamOffset offset,
+ ReliableQuicStream* stream) {
+ stream->offset_ = offset;
+}
+
+} // namespace test
+} // namespace net
diff --git a/net/quic/test_tools/reliable_quic_stream_peer.h b/net/quic/test_tools/reliable_quic_stream_peer.h
new file mode 100644
index 0000000..aaa8434
--- /dev/null
+++ b/net/quic/test_tools/reliable_quic_stream_peer.h
@@ -0,0 +1,29 @@
+// Copyright (c) 2012 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.
+
+#ifndef NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_
+#define NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_
+
+#include "base/basictypes.h"
+#include "net/quic/quic_protocol.h"
+
+namespace net {
+
+class ReliableQuicStream;
+
+namespace test {
+
+class ReliableQuicStreamPeer {
+ public:
+ static void SetWriteSideClosed(bool value, ReliableQuicStream* stream);
+ static void SetOffset(QuicStreamOffset offset, ReliableQuicStream* stream);
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(ReliableQuicStreamPeer);
+};
+
+} // namespace test
+} // namespace net
+
+#endif // NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_