diff options
author | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-25 02:43:49 +0000 |
---|---|---|
committer | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-25 02:43:49 +0000 |
commit | 4bea556e9700932d734c6cf68028515701bff027 (patch) | |
tree | f8d3e7432cb7d6fc74e3ccbb1a9e0b85915967b4 /net/socket/socket_test_util.h | |
parent | 47dacf542e275a350b751825c06399870a7c7061 (diff) | |
download | chromium_src-4bea556e9700932d734c6cf68028515701bff027.zip chromium_src-4bea556e9700932d734c6cf68028515701bff027.tar.gz chromium_src-4bea556e9700932d734c6cf68028515701bff027.tar.bz2 |
Make more things possible with mock sockets:
- check connection state in mock read and write
- make possible simulating short reads in DynamicMockSocket
TEST=none
http://crbug.com/15259
Review URL: http://codereview.chromium.org/147117
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19222 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket/socket_test_util.h')
-rw-r--r-- | net/socket/socket_test_util.h | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/net/socket/socket_test_util.h b/net/socket/socket_test_util.h index 4d3b569..bd7c437 100644 --- a/net/socket/socket_test_util.h +++ b/net/socket/socket_test_util.h @@ -67,21 +67,16 @@ struct MockWriteResult { class MockSocket { public: - MockSocket() : unexpected_read_(true, ERR_UNEXPECTED) { - } + MockSocket() {} virtual ~MockSocket() {} - virtual MockRead* GetNextRead() = 0; + virtual MockRead GetNextRead() = 0; virtual MockWriteResult OnWrite(const std::string& data) = 0; virtual void Reset() = 0; MockConnect connect_data() const { return connect_; } - protected: - MockRead* unexpected_read() { return &unexpected_read_; } - private: - MockRead unexpected_read_; MockConnect connect_; DISALLOW_COPY_AND_ASSIGN(MockSocket); @@ -96,7 +91,7 @@ class StaticMockSocket : public MockSocket { writes_(w), write_index_(0) {} // MockSocket methods: - virtual MockRead* GetNextRead(); + virtual MockRead GetNextRead(); virtual MockWriteResult OnWrite(const std::string& data); virtual void Reset(); @@ -119,10 +114,13 @@ class DynamicMockSocket : public MockSocket { DynamicMockSocket(); // MockSocket methods: - virtual MockRead* GetNextRead(); + virtual MockRead GetNextRead(); virtual MockWriteResult OnWrite(const std::string& data) = 0; virtual void Reset(); + int short_read_limit() const { return short_read_limit_; } + void set_short_read_limit(int limit) { short_read_limit_ = limit; } + protected: // The next time there is a read from this socket, it will return |data|. // Before calling SimulateRead next time, the previous data must be consumed. @@ -133,6 +131,9 @@ class DynamicMockSocket : public MockSocket { bool has_read_; bool consumed_read_; + // Max number of bytes we will read at a time. 0 means no limit. + int short_read_limit_; + DISALLOW_COPY_AND_ASSIGN(DynamicMockSocket); }; |