| Index: components/proximity_auth/connection_unittest.cc
|
| diff --git a/components/proximity_auth/connection_unittest.cc b/components/proximity_auth/connection_unittest.cc
|
| deleted file mode 100644
|
| index c39857cb11d3932879208082c68a14f25e411f31..0000000000000000000000000000000000000000
|
| --- a/components/proximity_auth/connection_unittest.cc
|
| +++ /dev/null
|
| @@ -1,246 +0,0 @@
|
| -// Copyright 2014 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 "components/proximity_auth/connection.h"
|
| -
|
| -#include "base/macros.h"
|
| -#include "base/memory/ptr_util.h"
|
| -#include "components/cryptauth/remote_device.h"
|
| -#include "components/proximity_auth/connection_observer.h"
|
| -#include "components/proximity_auth/wire_message.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -using testing::_;
|
| -using testing::DoAll;
|
| -using testing::NiceMock;
|
| -using testing::Return;
|
| -using testing::SetArgPointee;
|
| -using testing::StrictMock;
|
| -
|
| -namespace proximity_auth {
|
| -namespace {
|
| -
|
| -class MockConnection : public Connection {
|
| - public:
|
| - MockConnection() : Connection(cryptauth::RemoteDevice()) {}
|
| - ~MockConnection() {}
|
| -
|
| - MOCK_METHOD1(SetPaused, void(bool paused));
|
| - MOCK_METHOD0(Connect, void());
|
| - MOCK_METHOD0(Disconnect, void());
|
| - MOCK_METHOD0(CancelConnectionAttempt, void());
|
| - MOCK_METHOD1(SendMessageImplProxy, void(WireMessage* message));
|
| - MOCK_METHOD1(DeserializeWireMessageProxy,
|
| - WireMessage*(bool* is_incomplete_message));
|
| -
|
| - // Gmock only supports copyable types, so create simple wrapper methods for
|
| - // ease of mocking.
|
| - void SendMessageImpl(std::unique_ptr<WireMessage> message) override {
|
| - SendMessageImplProxy(message.get());
|
| - }
|
| -
|
| - std::unique_ptr<WireMessage> DeserializeWireMessage(
|
| - bool* is_incomplete_message) override {
|
| - return base::WrapUnique(DeserializeWireMessageProxy(is_incomplete_message));
|
| - }
|
| -
|
| - using Connection::status;
|
| - using Connection::SetStatus;
|
| - using Connection::OnDidSendMessage;
|
| - using Connection::OnBytesReceived;
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(MockConnection);
|
| -};
|
| -
|
| -class MockConnectionObserver : public ConnectionObserver {
|
| - public:
|
| - MockConnectionObserver() {}
|
| - virtual ~MockConnectionObserver() {}
|
| -
|
| - MOCK_METHOD3(OnConnectionStatusChanged,
|
| - void(Connection* connection,
|
| - Connection::Status old_status,
|
| - Connection::Status new_status));
|
| - MOCK_METHOD2(OnMessageReceived,
|
| - void(const Connection& connection, const WireMessage& message));
|
| - MOCK_METHOD3(OnSendCompleted,
|
| - void(const Connection& connection,
|
| - const WireMessage& message,
|
| - bool success));
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(MockConnectionObserver);
|
| -};
|
| -
|
| -// Unlike WireMessage, offers a public constructor.
|
| -class TestWireMessage : public WireMessage {
|
| - public:
|
| - TestWireMessage() : WireMessage(std::string()) {}
|
| - ~TestWireMessage() override {}
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(TestWireMessage);
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -TEST(ProximityAuthConnectionTest, IsConnected) {
|
| - StrictMock<MockConnection> connection;
|
| - EXPECT_FALSE(connection.IsConnected());
|
| -
|
| - connection.SetStatus(Connection::CONNECTED);
|
| - EXPECT_TRUE(connection.IsConnected());
|
| -
|
| - connection.SetStatus(Connection::DISCONNECTED);
|
| - EXPECT_FALSE(connection.IsConnected());
|
| -
|
| - connection.SetStatus(Connection::IN_PROGRESS);
|
| - EXPECT_FALSE(connection.IsConnected());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest, SendMessage_FailsWhenNotConnected) {
|
| - StrictMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::IN_PROGRESS);
|
| -
|
| - EXPECT_CALL(connection, SendMessageImplProxy(_)).Times(0);
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - SendMessage_FailsWhenAnotherMessageSendIsInProgress) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| -
|
| - EXPECT_CALL(connection, SendMessageImplProxy(_)).Times(0);
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest, SendMessage_SucceedsWhenConnected) {
|
| - StrictMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| -
|
| - EXPECT_CALL(connection, SendMessageImplProxy(_));
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - SendMessage_SucceedsAfterPreviousMessageSendCompletes) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| - connection.OnDidSendMessage(TestWireMessage(), true /* success */);
|
| -
|
| - EXPECT_CALL(connection, SendMessageImplProxy(_));
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest, SetStatus_NotifiesObserversOfStatusChange) {
|
| - StrictMock<MockConnection> connection;
|
| - EXPECT_EQ(Connection::DISCONNECTED, connection.status());
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - EXPECT_CALL(observer,
|
| - OnConnectionStatusChanged(&connection, Connection::DISCONNECTED,
|
| - Connection::CONNECTED));
|
| - connection.SetStatus(Connection::CONNECTED);
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - SetStatus_DoesntNotifyObserversIfStatusUnchanged) {
|
| - StrictMock<MockConnection> connection;
|
| - EXPECT_EQ(Connection::DISCONNECTED, connection.status());
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - EXPECT_CALL(observer, OnConnectionStatusChanged(_, _, _)).Times(0);
|
| - connection.SetStatus(Connection::DISCONNECTED);
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - OnDidSendMessage_NotifiesObserversIfMessageSendInProgress) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| - connection.SendMessage(std::unique_ptr<WireMessage>());
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - EXPECT_CALL(observer, OnSendCompleted(Ref(connection), _, true));
|
| - connection.OnDidSendMessage(TestWireMessage(), true /* success */);
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - OnDidSendMessage_DoesntNotifyObserversIfNoMessageSendInProgress) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - EXPECT_CALL(observer, OnSendCompleted(_, _, _)).Times(0);
|
| - connection.OnDidSendMessage(TestWireMessage(), true /* success */);
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - OnBytesReceived_NotifiesObserversOnValidMessage) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - ON_CALL(connection, DeserializeWireMessageProxy(_))
|
| - .WillByDefault(
|
| - DoAll(SetArgPointee<0>(false), Return(new TestWireMessage)));
|
| - EXPECT_CALL(observer, OnMessageReceived(Ref(connection), _));
|
| - connection.OnBytesReceived(std::string());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - OnBytesReceived_DoesntNotifyObserversIfNotConnected) {
|
| - StrictMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::IN_PROGRESS);
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - EXPECT_CALL(observer, OnMessageReceived(_, _)).Times(0);
|
| - connection.OnBytesReceived(std::string());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - OnBytesReceived_DoesntNotifyObserversIfMessageIsIncomplete) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - ON_CALL(connection, DeserializeWireMessageProxy(_))
|
| - .WillByDefault(DoAll(SetArgPointee<0>(true), Return(nullptr)));
|
| - EXPECT_CALL(observer, OnMessageReceived(_, _)).Times(0);
|
| - connection.OnBytesReceived(std::string());
|
| -}
|
| -
|
| -TEST(ProximityAuthConnectionTest,
|
| - OnBytesReceived_DoesntNotifyObserversIfMessageIsInvalid) {
|
| - NiceMock<MockConnection> connection;
|
| - connection.SetStatus(Connection::CONNECTED);
|
| -
|
| - StrictMock<MockConnectionObserver> observer;
|
| - connection.AddObserver(&observer);
|
| -
|
| - ON_CALL(connection, DeserializeWireMessageProxy(_))
|
| - .WillByDefault(DoAll(SetArgPointee<0>(false), Return(nullptr)));
|
| - EXPECT_CALL(observer, OnMessageReceived(_, _)).Times(0);
|
| - connection.OnBytesReceived(std::string());
|
| -}
|
| -
|
| -} // namespace proximity_auth
|
|
|