diff options
Diffstat (limited to 'src/components/protocol_handler/test/include')
-rw-r--r-- | src/components/protocol_handler/test/include/control_message_matcher.h | 144 | ||||
-rw-r--r-- | src/components/protocol_handler/test/include/protocol_handler/control_message_matcher.h | 207 | ||||
-rw-r--r-- | src/components/protocol_handler/test/include/protocol_handler/mock_telemetry_observer.h | 54 | ||||
-rw-r--r-- | src/components/protocol_handler/test/include/protocol_handler/protocol_observer_mock.h (renamed from src/components/protocol_handler/test/include/protocol_observer_mock.h) | 12 | ||||
-rw-r--r-- | src/components/protocol_handler/test/include/protocol_handler_mock.h | 234 | ||||
-rw-r--r-- | src/components/protocol_handler/test/include/session_observer_mock.h | 112 |
6 files changed, 267 insertions, 496 deletions
diff --git a/src/components/protocol_handler/test/include/control_message_matcher.h b/src/components/protocol_handler/test/include/control_message_matcher.h deleted file mode 100644 index 9239d0847f..0000000000 --- a/src/components/protocol_handler/test/include/control_message_matcher.h +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Copyright (c) 2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef TEST_COMPONENTS_INCLUDE_PROTOCOL_HANDLER_CONTROL_MESSAGE_MATCHER_H_ -#define TEST_COMPONENTS_INCLUDE_PROTOCOL_HANDLER_CONTROL_MESSAGE_MATCHER_H_ - -#include <gmock/gmock.h> -#include <string> -#include <vector> -#include "protocol/raw_message.h" -#include "protocol_handler/protocol_packet.h" - -namespace test { -namespace components { -namespace protocol_handler_test { -/* - * Matcher for checking RawMessage with ControlMessage - * Check error id - */ - -MATCHER_P2(ControlMessage, ExpectedFrameData, ExpectedEncryption, - (std::string(ExpectedEncryption ? "Protected" : "Unprotected") - + " control message ")) { - // Nack shall be always with flag protected off - DCHECK(ExpectedFrameData != 0x03 /*FRAME_DATA_START_SERVICE_NACK*/ || - !ExpectedEncryption); - const ::protocol_handler::RawMessagePtr message = arg; - ::protocol_handler::ProtocolPacket packet(message->connection_key()); - const protocol_handler::RESULT_CODE result = - packet.deserializePacket(message->data(), message->data_size()); - if (result != protocol_handler::RESULT_OK) { - *result_listener << "Error while message deserialization."; - return false; - } - if (::protocol_handler::FRAME_TYPE_CONTROL != packet.frame_type()) { - *result_listener << "Is not control message"; - return false; - } - if (ExpectedFrameData != packet.frame_data()) { - *result_listener << "Control message with data 0x" - << std::hex << static_cast<int>(packet.frame_data()) - << ", not 0x" - << std::hex << static_cast<int>(ExpectedFrameData); - return false; - } - if (ExpectedEncryption != packet.protection_flag()) { - *result_listener << "Control message is " << - (ExpectedEncryption ? "" : "not ") << "protected"; - return false; - } - return true; -} - - - -MATCHER_P4(ControlMessage, ExpectedFrameData, ExpectedEncryption, - ConnectionKey, VectorMatcher, - (std::string(ExpectedEncryption ? "Protected" : "Unprotected") - + " control message ")) { - // Nack shall be always with flag protected off - DCHECK(ExpectedFrameData != 0x03 /*FRAME_DATA_START_SERVICE_NACK*/ || - !ExpectedEncryption); - - const ::protocol_handler::RawMessagePtr message = arg; - ::protocol_handler::ProtocolPacket packet(message->connection_key()); - const protocol_handler::RESULT_CODE result = - packet.deserializePacket(message->data(), message->data_size()); - if (result != protocol_handler::RESULT_OK) { - *result_listener << "Error while message deserialization."; - return false; - } - - if (::protocol_handler::FRAME_TYPE_CONTROL != packet.frame_type()) { - *result_listener << "Is not control message"; - return false; - } - if (ExpectedFrameData != packet.frame_data()) { - *result_listener << "Control message with data 0x" - << std::hex << static_cast<int>(packet.frame_data()) - << ", not 0x" - << std::hex << static_cast<int>(ExpectedFrameData); - return false; - } - if (ExpectedEncryption != packet.protection_flag()) { - *result_listener << "Control message is " << - (ExpectedEncryption ? "" : "not ") << "protected"; - return false; - } - if (ConnectionKey != message->connection_key()) { - *result_listener << "Message for connection_id " << message->connection_key() << - ", expected for connection_id " << ConnectionKey; - return false; - } - std::vector<uint8_t> data_vector; - if (packet.data() && packet.data_size()) { - data_vector.assign(packet.data(), packet.data() + packet.data_size()); - } - ::testing::Matcher<std::vector<uint8_t> > m = VectorMatcher; - if (!m.Matches(data_vector)) { - *result_listener << "Message with " << data_vector.size() - << " byte data : 0x"; - for (size_t i = 0u; i < data_vector.size(); ++i) { - *result_listener << std::hex << static_cast<int>(data_vector[i]); - } - return false; - } - return true; -} - - - - -} // namespace protocol_handler_test -} // namespace components -} // namespace test -#endif // TEST_COMPONENTS_INCLUDE_PROTOCOL_HANDLER_CONTROL_MESSAGE_MATCHER_H_ diff --git a/src/components/protocol_handler/test/include/protocol_handler/control_message_matcher.h b/src/components/protocol_handler/test/include/protocol_handler/control_message_matcher.h new file mode 100644 index 0000000000..8f68003ada --- /dev/null +++ b/src/components/protocol_handler/test/include/protocol_handler/control_message_matcher.h @@ -0,0 +1,207 @@ +/* + * Copyright (c) 2016, Ford Motor Company + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following + * disclaimer in the documentation and/or other materials provided with the + * distribution. + * + * Neither the name of the Ford Motor Company nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_HANDLER_CONTROL_MESSAGE_MATCHER_H_ +#define SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_HANDLER_CONTROL_MESSAGE_MATCHER_H_ + +#include "gmock/gmock.h" +#include <ios> +#include <string> +#include <vector> +#include "protocol/raw_message.h" +#include "protocol_handler/protocol_packet.h" + +namespace test { +namespace components { +namespace protocol_handler_test { + +using protocol_handler::ProtocolPacket; +using protocol_handler::RawMessagePtr; +using protocol_handler::RESULT_CODE; +using protocol_handler::FRAME_TYPE_CONTROL; +using protocol_handler::FRAME_DATA_START_SERVICE_NACK; + +bool CheckRegularMatches(const ProtocolPacket& packet, + RESULT_CODE result, + testing::MatchResultListener& result_listener, + uint8_t ExpectedFrameType, + uint8_t ExpectedFrameData, + uint8_t ExpectedEncryption) { + if (result != protocol_handler::RESULT_OK) { + result_listener << "Error while message deserialization."; + return false; + } + if (ExpectedFrameType != packet.frame_type()) { + result_listener << "Message with frame type 0x" << std::hex + << static_cast<int>(packet.frame_type()) << ", not 0x" + << std::hex << static_cast<int>(ExpectedFrameType); + return false; + } + if (ExpectedFrameData != packet.frame_data()) { + result_listener << "Message with data 0x" << std::hex + << static_cast<int>(packet.frame_data()) << ", not 0x" + << std::hex << static_cast<int>(ExpectedFrameData); + return false; + } + if (ExpectedEncryption != packet.protection_flag()) { + result_listener << "Message is " << (ExpectedEncryption ? "" : "not ") + << "protected"; + return false; + } + return true; +} + +/* + * Matcher for checking RawMessage with ControlMessage + * Check error id + */ + +MATCHER_P2(ControlMessage, + ExpectedFrameData, + ExpectedEncryption, + (std::string(ExpectedEncryption ? "Protected" : "Unprotected") + + " control message ")) { + // Nack shall be always with flag protected off + if (ExpectedFrameData == FRAME_DATA_START_SERVICE_NACK && + ExpectedEncryption) { + *result_listener << "NACK message with PROTECTION_ON flag"; + return false; + } + const RawMessagePtr message = arg; + ProtocolPacket packet(message->connection_key()); + const RESULT_CODE result = + packet.deserializePacket(message->data(), message->data_size()); + + if (!CheckRegularMatches(packet, + result, + *result_listener, + FRAME_TYPE_CONTROL, + ExpectedFrameData, + ExpectedEncryption)) { + return false; + } + return true; +} + +MATCHER_P4(ControlMessage, + ExpectedFrameData, + ExpectedEncryption, + ConnectionKey, + VectorMatcher, + (std::string(ExpectedEncryption ? "Protected" : "Unprotected") + + " control message ")) { + // Nack shall be always with flag protected off + if (ExpectedFrameData == FRAME_DATA_START_SERVICE_NACK && + ExpectedEncryption) { + *result_listener << "NACK message with PROTECTION_ON flag"; + return false; + } + const RawMessagePtr message = arg; + ProtocolPacket packet(message->connection_key()); + const RESULT_CODE result = + packet.deserializePacket(message->data(), message->data_size()); + + if (!CheckRegularMatches(packet, + result, + *result_listener, + FRAME_TYPE_CONTROL, + ExpectedFrameData, + ExpectedEncryption)) { + return false; + } + + if (ConnectionKey != message->connection_key()) { + *result_listener << "Message for connection_id " + << message->connection_key() + << ", expected for connection_id " << ConnectionKey; + return false; + } + std::vector<uint8_t> data_vector; + if (packet.data() && packet.data_size()) { + data_vector.assign(packet.data(), packet.data() + packet.data_size()); + } + ::testing::Matcher<std::vector<uint8_t> > m = VectorMatcher; + if (!m.Matches(data_vector)) { + *result_listener << "Message with " << data_vector.size() + << " byte data : 0x"; + for (size_t i = 0u; i < data_vector.size(); ++i) { + *result_listener << std::hex << static_cast<int>(data_vector[i]); + } + return false; + } + return true; +} + +/* + * Matcher for checking RawMessage with any ExpectedMessage + */ + +MATCHER_P4(ExpectedMessage, + ExpectedFrameType, + ExpectedFrameData, + ExpectedEncryption, + ExpectedServiceType, + (std::string(ExpectedEncryption ? "Protected" : "Unprotected") + + " message ")) { + // Nack shall be always with flag protected off + if (ExpectedFrameType == FRAME_TYPE_CONTROL && + ExpectedFrameData == FRAME_DATA_START_SERVICE_NACK && + ExpectedEncryption) { + *result_listener << "NACK message with PROTECTION_ON flag"; + return false; + } + const RawMessagePtr message = arg; + ProtocolPacket packet(message->connection_key()); + const RESULT_CODE result = + packet.deserializePacket(message->data(), message->data_size()); + + if (!CheckRegularMatches(packet, + result, + *result_listener, + ExpectedFrameType, + ExpectedFrameData, + ExpectedEncryption)) { + return false; + } + if (ExpectedServiceType != packet.service_type()) { + *result_listener << "Service type is 0x" << std::hex + << static_cast<int>(packet.service_type()) << ", not 0x" + << std::hex << static_cast<int>(ExpectedServiceType); + return false; + } + return true; +} + +} // namespace protocol_handler_test +} // namespace components +} // namespace test + +#endif // SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_HANDLER_CONTROL_MESSAGE_MATCHER_H_ diff --git a/src/components/protocol_handler/test/include/protocol_handler/mock_telemetry_observer.h b/src/components/protocol_handler/test/include/protocol_handler/mock_telemetry_observer.h new file mode 100644 index 0000000000..40d662ac9f --- /dev/null +++ b/src/components/protocol_handler/test/include/protocol_handler/mock_telemetry_observer.h @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2014, Ford Motor Company + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following + * disclaimer in the documentation and/or other materials provided with the + * distribution. + * + * Neither the name of the Ford Motor Company nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef SRC_COMPONENTS_INCLUDE_TEST_PROTOCOL_HANDLER_MOCK_TIME_METRIC_OBSERVER_H_ +#define SRC_COMPONENTS_INCLUDE_TEST_PROTOCOL_HANDLER_MOCK_TIME_METRIC_OBSERVER_H_ + +#include "gmock/gmock.h" +#include "protocol_handler/time_metric_observer.h" +#include "utils/shared_ptr.h" + +namespace test { +namespace components { +namespace protocol_handler_test { + +class MockPHTelemetryObserver : public ::protocol_handler::PHTelemetryObserver { + public: + MOCK_METHOD2(StartMessageProcess, void(uint32_t, const TimevalStruct&)); + MOCK_METHOD2(EndMessageProcess, void(utils::SharedPtr<MessageMetric>)); +}; + +} // namespace protocol_handler_test +} // namespace components +} // namespace test + +- #endif // SRC_COMPONENTS_INCLUDE_TEST_PROTOCOL_HANDLER_MOCK_TIME_METRIC_OBSERVER_H_ diff --git a/src/components/protocol_handler/test/include/protocol_observer_mock.h b/src/components/protocol_handler/test/include/protocol_handler/protocol_observer_mock.h index c415e66e40..9f99ee41f8 100644 --- a/src/components/protocol_handler/test/include/protocol_observer_mock.h +++ b/src/components/protocol_handler/test/include/protocol_handler/protocol_observer_mock.h @@ -47,11 +47,11 @@ namespace protocol_handler_test { class ProtocolObserverMock : public ::protocol_handler::ProtocolObserver { public: MOCK_METHOD1(OnMessageReceived, - void(const ::protocol_handler::RawMessagePtr)); + void(const ::protocol_handler::RawMessagePtr)); MOCK_METHOD1(OnMobileMessageSent, - void(const ::protocol_handler::RawMessagePtr)); + void(const ::protocol_handler::RawMessagePtr)); }; -} // namespace protocol_handler_test -} // namespace components -} // namespace test -#endif //SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_OBSERVER_MOCK_H_ +} // namespace protocol_handler_test +} // namespace components +} // namespace test +#endif // SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_OBSERVER_MOCK_H_ diff --git a/src/components/protocol_handler/test/include/protocol_handler_mock.h b/src/components/protocol_handler/test/include/protocol_handler_mock.h deleted file mode 100644 index 41b7c491a4..0000000000 --- a/src/components/protocol_handler/test/include/protocol_handler_mock.h +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Copyright (c) 2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_HANDLER_MOCK_H_ -#define SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_HANDLER_MOCK_H_ - -#include <gmock/gmock.h> -#include "transport_manager/transport_manager.h" -#include "protocol_handler/session_observer.h" -#include "protocol_handler/protocol_packet.h" - -namespace test { -namespace components { -namespace protocol_handler_test { - -using namespace protocol_handler; -using namespace transport_manager; - -/* - * MOCK implementation of ::protocol_handler::ProtocolObserver interface - */ - -class ProtocolHandlerMock : public protocol_handler::ProtocolHandler { - public: - MOCK_METHOD2(SendMessageToMobileApp, - void(const ::protocol_handler::RawMessagePtr message, - bool final_message)); - MOCK_METHOD1(AddProtocolObserver, - void(::protocol_handler::ProtocolObserver *observer)); - MOCK_METHOD1(RemoveProtocolObserver, - void(::protocol_handler::ProtocolObserver *observer)); - MOCK_METHOD2(SendFramesNumber, - void(uint32_t connection_key, int32_t number_of_frames)); - MOCK_METHOD2(SendHeartBeat, - void(int32_t connection_id, uint8_t session_id)); - MOCK_METHOD2(SendEndSession, - void(int32_t connection_id, uint8_t session_id)); - MOCK_METHOD3(SendEndService, - void(int32_t connection_id, uint8_t session_id, uint8_t service_type)); -}; - -/* - * MOCK implementation of transport_manager::TransportManager interface - */ -class TransportManagerMock : public TransportManager { - public: - MOCK_METHOD0(Init, - int()); - MOCK_METHOD0(SearchDevices, - int()); - MOCK_METHOD1(ConnectDevice, - int(const DeviceHandle&)); - MOCK_METHOD1(DisconnectDevice, - int(const DeviceHandle&)); - MOCK_METHOD1(Disconnect, - int(const ConnectionUID &)); - MOCK_METHOD1(DisconnectForce, - int(const ConnectionUID &)); - MOCK_METHOD1(SendMessageToDevice, - int(const ::protocol_handler::RawMessagePtr)); - MOCK_METHOD1(ReceiveEventFromDevice, - int(const TransportAdapterEvent&)); - MOCK_METHOD1(AddTransportAdapter, - int(transport_adapter::TransportAdapter *)); - MOCK_METHOD1(AddEventListener, - int(TransportManagerListener *)); - MOCK_METHOD0(Stop, - int()); - MOCK_METHOD1(RemoveDevice, - int(const DeviceHandle& )); - MOCK_CONST_METHOD1(Visibility, - int(const bool &)); - MOCK_METHOD0(Reinit, - int()); -}; - -/* - * MOCK implementation of protocol_handler::SessionObserver interface - */ -class SessionObserverMock : public protocol_handler::SessionObserver { - public: -#ifdef ENABLE_SECURITY - MOCK_METHOD2(SetSSLContext, - int (const uint32_t& key, - security_manager::SSLContext* context)); - MOCK_METHOD2(GetSSLContext, - security_manager::SSLContext* ( - const uint32_t& key, - const protocol_handler::ServiceType& service_type)); -#endif // ENABLE_SECURITY - MOCK_METHOD2(SetProtectionFlag, - void( - const uint32_t& key, - const protocol_handler::ServiceType& service_type)); - MOCK_METHOD5(OnSessionStartedCallback, - uint32_t( - const transport_manager::ConnectionUID &connection_handle, - const uint8_t session_id, - const ::protocol_handler::ServiceType &service_type, - const bool is_protected, uint32_t* hash_id)); - MOCK_METHOD4(OnSessionEndedCallback, - uint32_t( - const transport_manager::ConnectionUID& connection_handle, - const uint8_t sessionId, - const uint32_t& hashCode, - const protocol_handler::ServiceType& service_type)); - MOCK_METHOD1(OnApplicationFloodCallBack, - void(const uint32_t&)); - MOCK_METHOD1(OnMalformedMessageCallback, - void(const uint32_t&)); - MOCK_METHOD2(KeyFromPair, - uint32_t( - transport_manager::ConnectionUID connection_handle, - uint8_t sessionId)); - MOCK_METHOD3(PairFromKey, - void( - uint32_t key, - transport_manager::ConnectionUID* connection_handle, - uint8_t* sessionId)); - MOCK_METHOD4(GetDataOnSessionKey, - int32_t(uint32_t key, - uint32_t* app_id, - std::list<int32_t>* sessions_list, - uint32_t* device_id)); - MOCK_METHOD5(GetDataOnDeviceID, - int32_t( - uint32_t device_handle, - std::string *device_name, - std::list<uint32_t> *applications_list, - std::string *mac_address, - std::string *connection_type)); - MOCK_METHOD2(IsHeartBeatSupported, - bool( transport_manager::ConnectionUID connection_handle, - uint8_t session_id)); - MOCK_METHOD3(ProtocolVersionUsed, - bool( uint32_t connection_id, - uint8_t session_id, uint8_t& protocol_version)); - MOCK_CONST_METHOD1(GetHandshakeContext, - security_manager::SSLContext::HandshakeContext (const uint32_t key) ); -}; - -#ifdef ENABLE_SECURITY -/* - * MOCK implementation of security_manager::SecurityManager - */ -class SecurityManagerMock : public security_manager::SecurityManager { - public: - MOCK_METHOD1(AddListener, - void(security_manager::SecurityManagerListener *)); - MOCK_METHOD1(CreateSSLContext, - security_manager::SSLContext*(const uint32_t &)); - MOCK_METHOD1(StartHandshake, - void(uint32_t)); - MOCK_METHOD4(SendInternalError, - void(const uint32_t , - const uint8_t&, - const std::string&, - const uint32_t )); - - MOCK_METHOD1(set_session_observer, - void(::protocol_handler::SessionObserver *)); - MOCK_METHOD1(set_protocol_handler, - void(::protocol_handler::ProtocolHandler *)); - MOCK_METHOD1(set_crypto_manager, - void(::security_manager::CryptoManager *)); - MOCK_METHOD1(RemoveListener, - void(::security_manager::SecurityManagerListener *)); - // protocol_handler::ProtocolObserver part - MOCK_METHOD1(OnMessageReceived, - void(const ::protocol_handler::RawMessagePtr)); - MOCK_METHOD1(OnMobileMessageSent, - void(const ::protocol_handler::RawMessagePtr)); -}; - -class SSLContextMock : public security_manager::SSLContext { - public: - MOCK_CONST_METHOD0(mode, int ()); - MOCK_METHOD2(StartHandshake, - security_manager::SSLContext::HandshakeResult ( - const uint8_t** const, size_t*)); - MOCK_METHOD4(DoHandshakeStep, - security_manager::SSLContext::HandshakeResult ( - const uint8_t* const, size_t, - const uint8_t** const, size_t*)); - MOCK_METHOD4(Encrypt, - bool (const uint8_t* const, size_t, - const uint8_t** const, size_t*)); - MOCK_METHOD4(Decrypt, - bool (const uint8_t* const, size_t, - const uint8_t** const, size_t*)); - MOCK_CONST_METHOD1(get_max_block_size, size_t (size_t)); - MOCK_CONST_METHOD0(IsInitCompleted, bool()); - MOCK_CONST_METHOD0(IsHandshakePending, bool()); - MOCK_CONST_METHOD0(LastError, - std::string()); - MOCK_METHOD0(ResetConnection, - void()); - MOCK_METHOD1(SetHandshakeContext, void (const HandshakeContext& hsh_ctx)); -}; -#endif // ENABLE_SECURITY -} - // namespace test -} // namespace components -} // namespace protocol_handler_test -#endif // SRC_COMPONENTS_PROTOCOL_HANDLER_TEST_INCLUDE_PROTOCOL_HANDLER_MOCK_H_ - diff --git a/src/components/protocol_handler/test/include/session_observer_mock.h b/src/components/protocol_handler/test/include/session_observer_mock.h deleted file mode 100644 index 383ebaa161..0000000000 --- a/src/components/protocol_handler/test/include/session_observer_mock.h +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Copyright (c) 2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef TEST_COMPONENTS_INCLUDE_PROTOCOL_HANDLER_SESSION_OBSERVER_MOCK_H_ -#define TEST_COMPONENTS_INCLUDE_PROTOCOL_HANDLER_SESSION_OBSERVER_MOCK_H_ - -#include <gmock/gmock.h> -#include <string> -#include <list> -#include "protocol_handler/session_observer.h" - -namespace test { -namespace components { -namespace protocol_handler_test { -/* - * MOCK implementation of ::protocol_handler::SessionObserver interface - */ -class SessionObserverMock: public ::protocol_handler::SessionObserver { - public: - MOCK_METHOD5(OnSessionStartedCallback, - uint32_t( - const transport_manager::ConnectionUID &connection_handle, - const uint8_t session_id, - const ::protocol_handler::ServiceType &service_type, - const bool is_protected, uint32_t* hash_id)); - MOCK_METHOD4(OnSessionEndedCallback, - uint32_t( - const transport_manager::ConnectionUID &connection_handle, - const uint8_t sessionId, - const uint32_t &hashCode, - const ::protocol_handler::ServiceType &service_type)); - MOCK_METHOD1(OnApplicationFloodCallBack, - void(const uint32_t&)); - MOCK_METHOD1(OnMalformedMessageCallback, - void(const uint32_t&)); - MOCK_METHOD2(KeyFromPair, - uint32_t( - transport_manager::ConnectionUID connection_handle, - uint8_t sessionId)); - MOCK_METHOD3(PairFromKey, - void( - uint32_t key, - transport_manager::ConnectionUID *connection_handle, - uint8_t *sessionId)); - MOCK_METHOD4(GetDataOnSessionKey, - int32_t(uint32_t key, - uint32_t *app_id, - std::list<int32_t> *sessions_list, - uint32_t *device_id)); - MOCK_METHOD5(GetDataOnDeviceID, - int32_t( - uint32_t device_handle, - std::string *device_name, - std::list<uint32_t> *applications_list, - std::string *mac_address, - std::string *connection_type)); - MOCK_METHOD2(IsHeartBeatSupported, - bool(transport_manager::ConnectionUID connection_handle, - uint8_t session_id)); - MOCK_METHOD3(ProtocolVersionUsed, - bool ( uint32_t connection_id, - uint8_t session_id, uint8_t& protocol_version)); -#ifdef ENABLE_SECURITY - MOCK_METHOD2(SetSSLContext, - int(const uint32_t &key, - ::security_manager::SSLContext *context)); - MOCK_METHOD2(GetSSLContext, - ::security_manager::SSLContext * ( - const uint32_t &key, - const ::protocol_handler::ServiceType &service_type)); - MOCK_METHOD2(SetProtectionFlag, - void( - const uint32_t &key, - const ::protocol_handler::ServiceType &service_type)); - MOCK_CONST_METHOD1(GetHandshakeContext, - security_manager::SSLContext::HandshakeContext (const uint32_t key) ); - -#endif // ENABLE_SECURITY -}; -} // namespace protocol_handler_test -} // namespace components -} // namespace test -#endif // TEST_COMPONENTS_INCLUDE_PROTOCOL_HANDLER_SESSION_OBSERVER_MOCK_H_ |