| Index: blimp/net/engine_connection_manager_unittest.cc
|
| diff --git a/blimp/net/engine_connection_manager_unittest.cc b/blimp/net/engine_connection_manager_unittest.cc
|
| index bd67c77e0471143fadc00f9ee4089b05bfcb2864..f9428068066e4d650647a60a149c309e08394b78 100644
|
| --- a/blimp/net/engine_connection_manager_unittest.cc
|
| +++ b/blimp/net/engine_connection_manager_unittest.cc
|
| @@ -13,13 +13,15 @@
|
| #include "base/memory/ptr_util.h"
|
| #include "base/message_loop/message_loop.h"
|
| #include "base/run_loop.h"
|
| -#include "blimp/net/blimp_connection.h"
|
| #include "blimp/net/blimp_transport.h"
|
| #include "blimp/net/common.h"
|
| #include "blimp/net/connection_error_observer.h"
|
| +#include "blimp/net/tcp_client_transport.h"
|
| +#include "blimp/net/tcp_connection.h"
|
| #include "blimp/net/test_common.h"
|
| #include "net/base/completion_callback.h"
|
| #include "net/base/io_buffer.h"
|
| +#include "net/base/ip_address.h"
|
| #include "net/base/net_errors.h"
|
| #include "net/base/test_completion_callback.h"
|
| #include "testing/gmock/include/gmock/gmock.h"
|
| @@ -35,61 +37,29 @@ namespace blimp {
|
| class EngineConnectionManagerTest : public testing::Test {
|
| public:
|
| EngineConnectionManagerTest()
|
| - : manager_(new EngineConnectionManager(&connection_handler_)) {}
|
| + : manager_(new EngineConnectionManager(&connection_handler_, nullptr)) {}
|
|
|
| ~EngineConnectionManagerTest() override {}
|
|
|
| - std::unique_ptr<BlimpConnection> CreateConnection() {
|
| - return base::MakeUnique<BlimpConnection>(
|
| - base::MakeUnique<MessagePort>(base::MakeUnique<MockPacketReader>(),
|
| - base::MakeUnique<MockPacketWriter>()));
|
| - }
|
| -
|
| protected:
|
| testing::StrictMock<MockConnectionHandler> connection_handler_;
|
| std::unique_ptr<EngineConnectionManager> manager_;
|
| + base::MessageLoopForIO message_loop_;
|
| };
|
|
|
| TEST_F(EngineConnectionManagerTest, ConnectionSucceeds) {
|
| - std::unique_ptr<testing::StrictMock<MockTransport>> transport1(
|
| - new testing::StrictMock<MockTransport>());
|
| - std::unique_ptr<testing::StrictMock<MockTransport>> transport2(
|
| - new testing::StrictMock<MockTransport>());
|
| -
|
| - net::CompletionCallback connect_cb_1;
|
| - net::CompletionCallback connect_cb_2;
|
| - EXPECT_CALL(*transport1, Connect(_))
|
| - .Times(2)
|
| - .WillRepeatedly(SaveArg<0>(&connect_cb_1));
|
| - EXPECT_CALL(*transport2, Connect(_))
|
| - .Times(2)
|
| - .WillRepeatedly(SaveArg<0>(&connect_cb_2));
|
| -
|
| - std::unique_ptr<MessagePort> port1 =
|
| - base::MakeUnique<MessagePort>(base::MakeUnique<MockPacketReader>(),
|
| - base::MakeUnique<MockPacketWriter>());
|
| - std::unique_ptr<MessagePort> port2 =
|
| - base::MakeUnique<MessagePort>(base::MakeUnique<MockPacketReader>(),
|
| - base::MakeUnique<MockPacketWriter>());
|
| - EXPECT_CALL(connection_handler_, HandleConnectionPtr(_)).Times(2);
|
| -
|
| - EXPECT_CALL(*transport1, TakeMessagePortPtr())
|
| - .WillOnce(Return(port1.release()));
|
| - EXPECT_CALL(*transport2, TakeMessagePortPtr())
|
| - .WillOnce(Return(port2.release()));
|
| + EXPECT_CALL(connection_handler_, HandleConnectionPtr(_)).Times(1);
|
|
|
| - ASSERT_TRUE(connect_cb_1.is_null());
|
| - manager_->AddTransport(std::move(transport1));
|
| - ASSERT_FALSE(connect_cb_1.is_null());
|
| + net::IPAddress ip_addr(net::IPAddress::IPv4Localhost());
|
| + net::IPEndPoint engine_endpoint(ip_addr, 0);
|
|
|
| - ASSERT_TRUE(connect_cb_2.is_null());
|
| - manager_->AddTransport(std::move(transport2));
|
| - ASSERT_FALSE(connect_cb_2.is_null());
|
| + manager_->ConnectTransport(&engine_endpoint,
|
| + EngineConnectionManager::EngineTransportType::TCP);
|
|
|
| - base::ResetAndReturn(&connect_cb_1).Run(net::OK);
|
| - base::ResetAndReturn(&connect_cb_2).Run(net::OK);
|
| - ASSERT_FALSE(connect_cb_1.is_null());
|
| - ASSERT_FALSE(connect_cb_2.is_null());
|
| + net::TestCompletionCallback connect_callback;
|
| + TCPClientTransport client(engine_endpoint, nullptr);
|
| + client.Connect(connect_callback.callback());
|
| + EXPECT_EQ(net::OK, connect_callback.WaitForResult());
|
| }
|
|
|
| } // namespace blimp
|
|
|