reliable_quic_stream_peer.h revision e5d81f57cb97b3b6b7fccc9c5610d21eb81db09d
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
11namespace net {
12
13class ReliableQuicStream;
14
15namespace test {
16
17class 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 void SetFlowControlSendOffset(ReliableQuicStream* stream,
28                                       QuicStreamOffset offset);
29  static void SetFlowControlReceiveOffset(ReliableQuicStream* stream,
30                                          QuicStreamOffset offset);
31  static void SetFlowControlMaxReceiveWindow(ReliableQuicStream* stream,
32                                             uint64 window_size);
33  static QuicStreamOffset SendWindowOffset(ReliableQuicStream* stream);
34  static uint64 SendWindowSize(ReliableQuicStream* stream);
35  static QuicStreamOffset ReceiveWindowOffset(ReliableQuicStream* stream);
36  static uint64 ReceiveWindowSize(ReliableQuicStream* stream);
37
38  static uint32 SizeOfQueuedData(ReliableQuicStream* stream);
39
40 private:
41  DISALLOW_COPY_AND_ASSIGN(ReliableQuicStreamPeer);
42};
43
44}  // namespace test
45}  // namespace net
46
47#endif  // NET_QUIC_TEST_TOOLS_RELIABLE_QUIC_STREAM_PEER_H_
48