Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
cNetServer.Tests.h
Go to the documentation of this file.
1 //
4 //
5 #ifndef _INC_cNetServerTests_H
6 #define _INC_cNetServerTests_H
7 #ifndef NO_PRAGMA_ONCE
8 #pragma once
9 #endif
10 
11 #include "Net/cNetServer.h"
12 
13 namespace GrayLib
14 {
15  class cThread;
16  class cUnitTestTelnetFactory;
17 
19  {
22  public:
24  public:
26  bool InitListenPorts();
27  bool WaitForClientThread(cThread* pClientThread, TIMESYSD_t nWaitMax = (30 * cTimeSys::k_FREQ));
28  };
29 
31  {
34  public:
37  public:
38  cUnitTestTelnetClient(cStreamInput* pInp = nullptr, cStreamOutput* pOut = nullptr);
39  HRESULT Test();
40  };
41 
43  {
47 
48  public:
49  static const char* k_pszMsgStop;
50  public:
51  cUnitTestTelnetStream(cUnitTestTelnetFactory* pFactory, IUnkObject* pServerConnection, cStreamInput* pStreamInp, cStreamOutput* pStreamOut);
52  virtual HRESULT ProcessStreamPacket() override;
54  };
55 
57  {
61 
62  public:
64  {
65  }
66  virtual const char* get_ProtocolName() const override
67  {
68  // IProtocolFactory
69  return "Telnet";
70  }
71  virtual HRESULT TestProtocol(const BYTE* pszPrefixData, size_t iPrefixLen) const override
72  {
75  UNREFERENCED_PARAMETER(pszPrefixData);
76  UNREFERENCED_PARAMETER(iPrefixLen);
77  return S_OK;
78  }
79  virtual cProtocolStreamPtr CreateProtocolStream(IUnkObject* pServerConnection, cStreamInput* pStreamInp, cStreamOutput* pStreamOut) override
80  {
81  return new cUnitTestTelnetStream(this, pServerConnection, pStreamInp, pStreamOut);
82  }
83  };
84 }
85 
86 #endif
#define UNREFERENCED_PARAMETER(P)
< _WIN32 type thing. get rid of stupid warning.
Definition: SysTypes.h:299
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cNetAddr.h:31
Definition: cNetServer.Tests.h:19
cNetAddress m_addr
address and port of this server. Used by client to connect to me.
Definition: cNetServer.Tests.h:23
bool WaitForClientThread(cThread *pClientThread, TIMESYSD_t nWaitMax=(30 *cTimeSys::k_FREQ))
Definition: cNetServer.Tests.cpp:29
bool InitListenPorts()
Definition: cNetServer.Tests.cpp:17
cNetServerUnitTest(IProtocolFactory &factory, cNetAddress addr)
Definition: cNetServer.Tests.cpp:11
Definition: cNetServer.h:157
Definition: cProtocol.h:24
Definition: cThread.h:68
Definition: cNetServer.Tests.h:31
cStreamInput * m_pInp
Definition: cNetServer.Tests.h:35
cUnitTestTelnetClient(cStreamInput *pInp=nullptr, cStreamOutput *pOut=nullptr)
Definition: cNetServer.Tests.cpp:62
HRESULT Test()
Definition: cNetServer.Tests.cpp:68
cStreamOutput * m_pOut
Definition: cNetServer.Tests.h:36
Definition: cNetServer.Tests.h:57
virtual const char * get_ProtocolName() const override
Definition: cNetServer.Tests.h:66
cUnitTestTelnetFactory()
Definition: cNetServer.Tests.h:63
virtual HRESULT TestProtocol(const BYTE *pszPrefixData, size_t iPrefixLen) const override
Definition: cNetServer.Tests.h:71
virtual cProtocolStreamPtr CreateProtocolStream(IUnkObject *pServerConnection, cStreamInput *pStreamInp, cStreamOutput *pStreamOut) override
Definition: cNetServer.Tests.h:79
Definition: cNetServer.Tests.h:43
cUnitTestTelnetStream(cUnitTestTelnetFactory *pFactory, IUnkObject *pServerConnection, cStreamInput *pStreamInp, cStreamOutput *pStreamOut)
Definition: cNetServer.Tests.cpp:126
static const char * k_pszMsgStop
Definition: cNetServer.Tests.h:49
virtual HRESULT ProcessStreamPacket() override
Definition: cNetServer.Tests.cpp:131
Definition: cRefPtr.h:22
Definition: cStream.h:306
Definition: cStream.h:126
static const TIMESYS_t k_FREQ
milliSec per Sec
Definition: cTimeSys.h:100
Definition: cMesh.h:22
INT32 TIMESYSD_t
Time delta. signed milli-Seconds Span. cTimeSys::k_DMAX, cTimeSys::k_INF = MAILSLOT_WAIT_FOREVER.
Definition: cTimeSys.h:28
Definition: cProtocol.h:125