| Index: components/cast_channel/cast_socket_unittest.cc
|
| diff --git a/components/cast_channel/cast_socket_unittest.cc b/components/cast_channel/cast_socket_unittest.cc
|
| index d0d2461cc20dcf18faf6afa3026806d3ae402f1f..bc4ae2874804776744b6d2353b9fcac2d4f453d1 100644
|
| --- a/components/cast_channel/cast_socket_unittest.cc
|
| +++ b/components/cast_channel/cast_socket_unittest.cc
|
| @@ -158,7 +158,8 @@ class CompleteHandler {
|
| public:
|
| CompleteHandler() {}
|
| MOCK_METHOD1(OnCloseComplete, void(int result));
|
| - MOCK_METHOD1(OnConnectComplete, void(ChannelError error_state));
|
| + MOCK_METHOD2(OnConnectComplete,
|
| + void(int channel_id, ChannelError error_state));
|
| MOCK_METHOD1(OnWriteComplete, void(int result));
|
| MOCK_METHOD1(OnReadComplete, void(int result));
|
|
|
| @@ -356,7 +357,7 @@ class CastSocketTest : public testing::Test {
|
| SendMessage(EqualsProto(challenge_proto), _))
|
| .WillOnce(PostCompletionCallbackTask<1>(net::OK));
|
| EXPECT_CALL(*socket_->GetMockTransport(), Start());
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::NONE));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::NONE));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -432,7 +433,7 @@ TEST_F(CastSocketTest, TestConnectAuthMessageCorrupted) {
|
| SendMessage(EqualsProto(challenge_proto), _))
|
| .WillOnce(PostCompletionCallbackTask<1>(net::OK));
|
| EXPECT_CALL(*socket_->GetMockTransport(), Start());
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::TRANSPORT_ERROR));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::TRANSPORT_ERROR));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -457,7 +458,7 @@ TEST_F(CastSocketTest, TestConnectTcpConnectErrorAsync) {
|
|
|
| socket_->SetupTcpConnect(net::ASYNC, net::ERR_FAILED);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CONNECT_ERROR));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_ERROR));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -472,7 +473,7 @@ TEST_F(CastSocketTest, TestConnectTcpConnectErrorSync) {
|
|
|
| socket_->SetupTcpConnect(net::SYNCHRONOUS, net::ERR_FAILED);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CONNECT_ERROR));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_ERROR));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -485,7 +486,7 @@ TEST_F(CastSocketTest, TestConnectTcpConnectErrorSync) {
|
| TEST_F(CastSocketTest, TestConnectTcpTimeoutError) {
|
| CreateCastSocketSecure();
|
| socket_->SetupTcpConnectUnresponsive();
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CONNECT_TIMEOUT));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_TIMEOUT));
|
| EXPECT_CALL(*observer_, OnError(_, ChannelError::CONNECT_TIMEOUT));
|
| socket_->AddObserver(observer_.get());
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| @@ -505,7 +506,7 @@ TEST_F(CastSocketTest, TestConnectTcpTimeoutError) {
|
| TEST_F(CastSocketTest, TestConnectTcpSocketTimeoutError) {
|
| CreateCastSocketSecure();
|
| socket_->SetupTcpConnect(net::SYNCHRONOUS, net::ERR_CONNECTION_TIMED_OUT);
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CONNECT_TIMEOUT));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_TIMEOUT));
|
| EXPECT_CALL(*observer_, OnError(_, ChannelError::CONNECT_TIMEOUT));
|
| socket_->AddObserver(observer_.get());
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| @@ -525,7 +526,8 @@ TEST_F(CastSocketTest, TestConnectSslConnectErrorAsync) {
|
| socket_->SetupTcpConnect(net::SYNCHRONOUS, net::OK);
|
| socket_->SetupSslConnect(net::SYNCHRONOUS, net::ERR_FAILED);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::AUTHENTICATION_ERROR));
|
| + EXPECT_CALL(handler_,
|
| + OnConnectComplete(_, ChannelError::AUTHENTICATION_ERROR));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -541,7 +543,8 @@ TEST_F(CastSocketTest, TestConnectSslConnectErrorSync) {
|
| socket_->SetupTcpConnect(net::SYNCHRONOUS, net::OK);
|
| socket_->SetupSslConnect(net::SYNCHRONOUS, net::ERR_FAILED);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::AUTHENTICATION_ERROR));
|
| + EXPECT_CALL(handler_,
|
| + OnConnectComplete(_, ChannelError::AUTHENTICATION_ERROR));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -559,7 +562,7 @@ TEST_F(CastSocketTest, TestConnectSslConnectTimeoutSync) {
|
| socket_->SetupTcpConnect(net::SYNCHRONOUS, net::OK);
|
| socket_->SetupSslConnect(net::SYNCHRONOUS, net::ERR_CONNECTION_TIMED_OUT);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CONNECT_TIMEOUT));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_TIMEOUT));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -577,7 +580,7 @@ TEST_F(CastSocketTest, TestConnectSslConnectTimeoutAsync) {
|
| socket_->SetupTcpConnect(net::ASYNC, net::OK);
|
| socket_->SetupSslConnect(net::ASYNC, net::ERR_CONNECTION_TIMED_OUT);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CONNECT_TIMEOUT));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_TIMEOUT));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -597,7 +600,7 @@ TEST_F(CastSocketTest, TestConnectChallengeSendError) {
|
| SendMessage(EqualsProto(CreateAuthChallenge()), _))
|
| .WillOnce(PostCompletionCallbackTask<1>(net::ERR_CONNECTION_RESET));
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CAST_SOCKET_ERROR));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CAST_SOCKET_ERROR));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -634,7 +637,7 @@ TEST_F(CastSocketTest, TestConnectChallengeReplyReceiveError) {
|
| .WillOnce(PostCompletionCallbackTask<1>(net::OK));
|
| socket_->AddReadResult(net::SYNCHRONOUS, net::ERR_FAILED);
|
| EXPECT_CALL(*observer_, OnError(_, ChannelError::CAST_SOCKET_ERROR));
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::CAST_SOCKET_ERROR));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CAST_SOCKET_ERROR));
|
| EXPECT_CALL(*socket_->GetMockTransport(), Start());
|
| socket_->AddObserver(observer_.get());
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| @@ -660,7 +663,8 @@ TEST_F(CastSocketTest, TestConnectChallengeVerificationFails) {
|
| EXPECT_CALL(*socket_->GetMockTransport(),
|
| SendMessage(EqualsProto(challenge_proto), _))
|
| .WillOnce(PostCompletionCallbackTask<1>(net::OK));
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::AUTHENTICATION_ERROR));
|
| + EXPECT_CALL(handler_,
|
| + OnConnectComplete(_, ChannelError::AUTHENTICATION_ERROR));
|
| EXPECT_CALL(*socket_->GetMockTransport(), Start());
|
| socket_->AddObserver(observer_.get());
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| @@ -698,7 +702,7 @@ TEST_F(CastSocketTest, TestConnectEndToEndWithRealTransportAsync) {
|
| EXPECT_TRUE(MessageFramer::Serialize(test_message, &test_message_str));
|
| socket_->AddWriteResultForData(net::ASYNC, test_message_str);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::NONE));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::NONE));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -740,7 +744,7 @@ TEST_F(CastSocketTest, TestConnectEndToEndWithRealTransportSync) {
|
| EXPECT_TRUE(MessageFramer::Serialize(test_message, &test_message_str));
|
| socket_->AddWriteResultForData(net::SYNCHRONOUS, test_message_str);
|
|
|
| - EXPECT_CALL(handler_, OnConnectComplete(ChannelError::NONE));
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::NONE));
|
| socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| base::Unretained(&handler_)));
|
| RunPendingTasks();
|
| @@ -775,4 +779,45 @@ TEST_F(CastSocketTest, TestObservers) {
|
| delegate.OnError(cast_channel::ChannelError::CONNECT_ERROR);
|
| }
|
|
|
| +TEST_F(CastSocketTest, TestOpenChannelConnectingSocket) {
|
| + CreateCastSocketSecure();
|
| + socket_->SetupTcpConnectUnresponsive();
|
| + socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| + base::Unretained(&handler_)));
|
| + RunPendingTasks();
|
| +
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_TIMEOUT))
|
| + .Times(2);
|
| + socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| + base::Unretained(&handler_)));
|
| + socket_->TriggerTimeout();
|
| + RunPendingTasks();
|
| +}
|
| +
|
| +TEST_F(CastSocketTest, TestOpenChannelConnectedSocket) {
|
| + CreateCastSocketSecure();
|
| + socket_->SetupTcpConnect(net::ASYNC, net::OK);
|
| + socket_->SetupSslConnect(net::ASYNC, net::OK);
|
| +
|
| + HandleAuthHandshake();
|
| +
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::NONE));
|
| + socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| + base::Unretained(&handler_)));
|
| +}
|
| +
|
| +TEST_F(CastSocketTest, TestOpenChannelClosedSocket) {
|
| + CreateCastSocketSecure();
|
| + socket_->SetupTcpConnect(net::ASYNC, net::ERR_FAILED);
|
| +
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_ERROR));
|
| + socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| + base::Unretained(&handler_)));
|
| + RunPendingTasks();
|
| +
|
| + EXPECT_CALL(handler_, OnConnectComplete(_, ChannelError::CONNECT_ERROR));
|
| + socket_->Connect(base::Bind(&CompleteHandler::OnConnectComplete,
|
| + base::Unretained(&handler_)));
|
| +}
|
| +
|
| } // namespace cast_channel
|
|
|