summaryrefslogtreecommitdiffstats
path: root/net/socket/socket_test_util.h
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-25 02:43:49 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-25 02:43:49 +0000
commit4bea556e9700932d734c6cf68028515701bff027 (patch)
treef8d3e7432cb7d6fc74e3ccbb1a9e0b85915967b4 /net/socket/socket_test_util.h
parent47dacf542e275a350b751825c06399870a7c7061 (diff)
downloadchromium_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.h19
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);
};