Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / net / quic / test_tools / reliable_quic_stream_peer.h
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_
6 #define NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_
7
8 #include "base/basictypes.h"
9 #include "net/quic/quic_protocol.h"
10
11 namespace net {
12
13 class ReliableQuicStream;
14
15 namespace test {
16
17 class ReliableQuicStreamPeer {
18  public:
19   static void SetWriteSideClosed(bool value, ReliableQuicStream* stream);
20   static void SetStreamBytesWritten(QuicStreamOffset stream_bytes_written,
21                                     ReliableQuicStream* stream);
22   static void CloseReadSide(ReliableQuicStream* stream);
23
24   static bool FinSent(ReliableQuicStream* stream);
25   static bool RstSent(ReliableQuicStream* stream);
26
27   static uint32 SizeOfQueuedData(ReliableQuicStream* stream);
28
29   static void SetFecPolicy(ReliableQuicStream* stream, FecPolicy fec_policy);
30
31   static bool StreamContributesToConnectionFlowControl(
32       ReliableQuicStream* stream);
33
34  private:
35   DISALLOW_COPY_AND_ASSIGN(ReliableQuicStreamPeer);
36 };
37
38 }  // namespace test
39 }  // namespace net
40
41 #endif  // NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_