| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef REMOTING_PROTOCOL_AUTHENTICATOR_TEST_BASE_H_ | 5 #ifndef REMOTING_PROTOCOL_AUTHENTICATOR_TEST_BASE_H_ |
| 6 #define REMOTING_PROTOCOL_AUTHENTICATOR_TEST_BASE_H_ | 6 #define REMOTING_PROTOCOL_AUTHENTICATOR_TEST_BASE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
| 11 #include "base/message_loop/message_loop.h" | 11 #include "base/message_loop/message_loop.h" |
| 12 #include "net/base/net_errors.h" |
| 12 #include "testing/gmock/include/gmock/gmock.h" | 13 #include "testing/gmock/include/gmock/gmock.h" |
| 13 #include "testing/gtest/include/gtest/gtest.h" | 14 #include "testing/gtest/include/gtest/gtest.h" |
| 14 | 15 |
| 15 namespace net { | 16 namespace net { |
| 16 class StreamSocket; | 17 class StreamSocket; |
| 17 } // namespace net | 18 } // namespace net |
| 18 | 19 |
| 19 namespace remoting { | 20 namespace remoting { |
| 20 | 21 |
| 21 class RsaKeyPair; | 22 class RsaKeyPair; |
| 22 | 23 |
| 23 namespace protocol { | 24 namespace protocol { |
| 24 | 25 |
| 25 class Authenticator; | 26 class Authenticator; |
| 26 class ChannelAuthenticator; | 27 class ChannelAuthenticator; |
| 27 class FakeSocket; | 28 class FakeSocket; |
| 28 | 29 |
| 29 class AuthenticatorTestBase : public testing::Test { | 30 class AuthenticatorTestBase : public testing::Test { |
| 30 public: | 31 public: |
| 31 AuthenticatorTestBase(); | 32 AuthenticatorTestBase(); |
| 32 virtual ~AuthenticatorTestBase(); | 33 virtual ~AuthenticatorTestBase(); |
| 33 | 34 |
| 34 protected: | 35 protected: |
| 35 class MockChannelDoneCallback { | 36 class MockChannelDoneCallback { |
| 36 public: | 37 public: |
| 37 MockChannelDoneCallback(); | 38 MockChannelDoneCallback(); |
| 38 ~MockChannelDoneCallback(); | 39 ~MockChannelDoneCallback(); |
| 39 MOCK_METHOD1(OnDone, void(int error)); | 40 MOCK_METHOD1(OnDone, void(net::Error error)); |
| 40 }; | 41 }; |
| 41 | 42 |
| 42 static void ContinueAuthExchangeWith(Authenticator* sender, | 43 static void ContinueAuthExchangeWith(Authenticator* sender, |
| 43 Authenticator* receiver, | 44 Authenticator* receiver, |
| 44 bool sender_started, | 45 bool sender_started, |
| 45 bool receiver_srated); | 46 bool receiver_srated); |
| 46 virtual void SetUp() OVERRIDE; | 47 virtual void SetUp() OVERRIDE; |
| 47 void RunAuthExchange(); | 48 void RunAuthExchange(); |
| 48 void RunHostInitiatedAuthExchange(); | 49 void RunHostInitiatedAuthExchange(); |
| 49 void RunChannelAuth(bool expected_fail); | 50 void RunChannelAuth(bool expected_fail); |
| 50 | 51 |
| 51 void OnHostConnected(int error, | 52 void OnHostConnected(net::Error error, |
| 52 scoped_ptr<net::StreamSocket> socket); | 53 scoped_ptr<net::StreamSocket> socket); |
| 53 void OnClientConnected(int error, | 54 void OnClientConnected(net::Error error, |
| 54 scoped_ptr<net::StreamSocket> socket); | 55 scoped_ptr<net::StreamSocket> socket); |
| 55 | 56 |
| 56 base::MessageLoop message_loop_; | 57 base::MessageLoop message_loop_; |
| 57 | 58 |
| 58 scoped_refptr<RsaKeyPair> key_pair_; | 59 scoped_refptr<RsaKeyPair> key_pair_; |
| 59 std::string host_public_key_; | 60 std::string host_public_key_; |
| 60 std::string host_cert_; | 61 std::string host_cert_; |
| 61 scoped_ptr<Authenticator> host_; | 62 scoped_ptr<Authenticator> host_; |
| 62 scoped_ptr<Authenticator> client_; | 63 scoped_ptr<Authenticator> client_; |
| 63 scoped_ptr<FakeSocket> client_fake_socket_; | 64 scoped_ptr<FakeSocket> client_fake_socket_; |
| 64 scoped_ptr<FakeSocket> host_fake_socket_; | 65 scoped_ptr<FakeSocket> host_fake_socket_; |
| 65 scoped_ptr<ChannelAuthenticator> client_auth_; | 66 scoped_ptr<ChannelAuthenticator> client_auth_; |
| 66 scoped_ptr<ChannelAuthenticator> host_auth_; | 67 scoped_ptr<ChannelAuthenticator> host_auth_; |
| 67 MockChannelDoneCallback client_callback_; | 68 MockChannelDoneCallback client_callback_; |
| 68 MockChannelDoneCallback host_callback_; | 69 MockChannelDoneCallback host_callback_; |
| 69 scoped_ptr<net::StreamSocket> client_socket_; | 70 scoped_ptr<net::StreamSocket> client_socket_; |
| 70 scoped_ptr<net::StreamSocket> host_socket_; | 71 scoped_ptr<net::StreamSocket> host_socket_; |
| 71 | 72 |
| 72 DISALLOW_COPY_AND_ASSIGN(AuthenticatorTestBase); | 73 DISALLOW_COPY_AND_ASSIGN(AuthenticatorTestBase); |
| 73 }; | 74 }; |
| 74 | 75 |
| 75 } // namespace protocol | 76 } // namespace protocol |
| 76 } // namespace remoting | 77 } // namespace remoting |
| 77 | 78 |
| 78 #endif // REMOTING_PROTOCOL_AUTHENTICATOR_TEST_BASE_H_ | 79 #endif // REMOTING_PROTOCOL_AUTHENTICATOR_TEST_BASE_H_ |
| OLD | NEW |