diff options
Diffstat (limited to 'chromium/net/socket/buffered_write_stream_socket_unittest.cc')
-rw-r--r-- | chromium/net/socket/buffered_write_stream_socket_unittest.cc | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/chromium/net/socket/buffered_write_stream_socket_unittest.cc b/chromium/net/socket/buffered_write_stream_socket_unittest.cc index 485295f33f6..e69de29bb2d 100644 --- a/chromium/net/socket/buffered_write_stream_socket_unittest.cc +++ b/chromium/net/socket/buffered_write_stream_socket_unittest.cc @@ -1,124 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "net/socket/buffered_write_stream_socket.h" - -#include "base/memory/ref_counted.h" -#include "base/memory/scoped_ptr.h" -#include "base/message_loop/message_loop.h" -#include "net/base/net_errors.h" -#include "net/base/net_log.h" -#include "net/socket/socket_test_util.h" -#include "testing/gtest/include/gtest/gtest.h" - -namespace net { - -namespace { - -class BufferedWriteStreamSocketTest : public testing::Test { - public: - void Finish() { - base::MessageLoop::current()->RunUntilIdle(); - EXPECT_TRUE(data_->at_read_eof()); - EXPECT_TRUE(data_->at_write_eof()); - } - - void Initialize(MockWrite* writes, size_t writes_count) { - data_.reset(new DeterministicSocketData(NULL, 0, writes, writes_count)); - data_->set_connect_data(MockConnect(SYNCHRONOUS, 0)); - if (writes_count) { - data_->StopAfter(writes_count); - } - scoped_ptr<DeterministicMockTCPClientSocket> wrapped_socket( - new DeterministicMockTCPClientSocket(net_log_.net_log(), data_.get())); - data_->set_delegate(wrapped_socket->AsWeakPtr()); - socket_.reset(new BufferedWriteStreamSocket( - wrapped_socket.PassAs<StreamSocket>())); - socket_->Connect(callback_.callback()); - } - - void TestWrite(const char* text) { - scoped_refptr<StringIOBuffer> buf(new StringIOBuffer(text)); - EXPECT_EQ(buf->size(), - socket_->Write(buf.get(), buf->size(), callback_.callback())); - } - - scoped_ptr<BufferedWriteStreamSocket> socket_; - scoped_ptr<DeterministicSocketData> data_; - BoundNetLog net_log_; - TestCompletionCallback callback_; -}; - -TEST_F(BufferedWriteStreamSocketTest, SingleWrite) { - MockWrite writes[] = { - MockWrite(SYNCHRONOUS, 0, "abc"), - }; - Initialize(writes, arraysize(writes)); - TestWrite("abc"); - Finish(); -} - -TEST_F(BufferedWriteStreamSocketTest, AsyncWrite) { - MockWrite writes[] = { - MockWrite(ASYNC, 0, "abc"), - }; - Initialize(writes, arraysize(writes)); - TestWrite("abc"); - data_->Run(); - Finish(); -} - -TEST_F(BufferedWriteStreamSocketTest, TwoWritesIntoOne) { - MockWrite writes[] = { - MockWrite(SYNCHRONOUS, 0, "abcdef"), - }; - Initialize(writes, arraysize(writes)); - TestWrite("abc"); - TestWrite("def"); - Finish(); -} - -TEST_F(BufferedWriteStreamSocketTest, WriteWhileBlocked) { - MockWrite writes[] = { - MockWrite(ASYNC, 0, "abc"), - MockWrite(ASYNC, 1, "def"), - MockWrite(ASYNC, 2, "ghi"), - }; - Initialize(writes, arraysize(writes)); - TestWrite("abc"); - base::MessageLoop::current()->RunUntilIdle(); - TestWrite("def"); - data_->RunFor(1); - TestWrite("ghi"); - data_->RunFor(1); - Finish(); -} - -TEST_F(BufferedWriteStreamSocketTest, ContinuesPartialWrite) { - MockWrite writes[] = { - MockWrite(ASYNC, 0, "abc"), - MockWrite(ASYNC, 1, "def"), - }; - Initialize(writes, arraysize(writes)); - TestWrite("abcdef"); - data_->Run(); - Finish(); -} - -TEST_F(BufferedWriteStreamSocketTest, TwoSeparateWrites) { - MockWrite writes[] = { - MockWrite(ASYNC, 0, "abc"), - MockWrite(ASYNC, 1, "def"), - }; - Initialize(writes, arraysize(writes)); - TestWrite("abc"); - data_->RunFor(1); - TestWrite("def"); - data_->RunFor(1); - Finish(); -} - -} // anonymous namespace - -} // namespace net |