diff options
Diffstat (limited to 'src/components/dbus/test')
-rw-r--r-- | src/components/dbus/test/CMakeLists.txt | 53 | ||||
-rw-r--r-- | src/components/dbus/test/dbus_adapter_test.cc | 59 | ||||
-rw-r--r-- | src/components/dbus/test/dbus_message_controller_test.cc | 116 | ||||
-rw-r--r-- | src/components/dbus/test/include/dbus/mock_dbus_message_controller.h | 75 | ||||
-rw-r--r-- | src/components/dbus/test/include/dbus/mock_subscriber.h | 62 | ||||
-rw-r--r-- | src/components/dbus/test/mock_subscriber.cc | 71 | ||||
-rw-r--r-- | src/components/dbus/test/schema_test.cc | 118 |
7 files changed, 0 insertions, 554 deletions
diff --git a/src/components/dbus/test/CMakeLists.txt b/src/components/dbus/test/CMakeLists.txt deleted file mode 100644 index 914bd2ca84..0000000000 --- a/src/components/dbus/test/CMakeLists.txt +++ /dev/null @@ -1,53 +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. - -include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake) - -include_directories ( - ${GMOCK_INCLUDE_DIRECTORY} - ${COMPONENTS_DIR}/dbus/include/ - ${COMPONENTS_DIR}/dbus/test/include/ -) - -#FIXME: exclude some tests -set (EXCLUDE_PATHS - dbus_message_controller_test.cc -) - -collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" ${EXCLUDE_PATHS}) - -set (LIBRARIES - gmock - DBus - formatters - SmartObjects -) - -create_test(test_DBus_test "${SOURCES}" "${LIBRARIES}") diff --git a/src/components/dbus/test/dbus_adapter_test.cc b/src/components/dbus/test/dbus_adapter_test.cc deleted file mode 100644 index 74a6de1aa9..0000000000 --- a/src/components/dbus/test/dbus_adapter_test.cc +++ /dev/null @@ -1,59 +0,0 @@ -/* - * \file test_dbus_adapter.cc - * \brief - * - * Copyright (c) 2013, 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. - */ - -#include <gtest/gtest.h> -#include "dbus/dbus_adapter.h" - -using ::dbus::DBusAdapter; - -namespace test { -namespace components { -namespace dbus { - -class DBusAdapterTest : public ::testing::Test {}; - -TEST_F(DBusAdapterTest, Initialization) { - const std::string kSdlServiceName = "test.ford.sdl.core"; - const std::string kSdlObjectPath = "/"; - const std::string kHmiServiceName = "test.ford.sdl.hmi"; - const std::string kHmiObjectPath = "/"; - ::dbus::DBusAdapter adapter( - kSdlServiceName, kSdlObjectPath, kHmiServiceName, kHmiObjectPath); - EXPECT_TRUE(adapter.Init()); -} - -} // namespace dbus -} // namespace components -} // namespace test diff --git a/src/components/dbus/test/dbus_message_controller_test.cc b/src/components/dbus/test/dbus_message_controller_test.cc deleted file mode 100644 index c06e144f9b..0000000000 --- a/src/components/dbus/test/dbus_message_controller_test.cc +++ /dev/null @@ -1,116 +0,0 @@ -/* - * \file test_dbus_adapter.cc - * \brief - * - * Copyright (c) 2013, 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. - */ - -#include <pthread.h> -#include <gtest/gtest.h> -#include <gmock/gmock.h> -#include "dbus/mock_dbus_message_controller.h" -#include "dbus/mock_subscriber.h" - -using ::testing::_; - -namespace test { -namespace components { -namespace dbus { - -ACTION_P(SignalTest, test) { - if (test->thread_id != pthread_self()) { - pthread_mutex_lock(&test->test_mutex); - pthread_cond_signal(&test->test_cond); - pthread_mutex_unlock(&test->test_mutex); - } else { - test->one_thread = true; - } -} - -class DBusMessageControllerTest : public ::testing::Test { - public: - volatile bool one_thread; - pthread_t thread_id; - static pthread_mutex_t test_mutex; - static pthread_cond_t test_cond; - - protected: - MockDBusMessageController* controller_; - MockSubscriber* subscriber_; - - static void SetUpTestCase() {} - - static void TearDownTestCase() {} - - virtual void SetUp() { - const std::string kService = "sdl.core.test_api"; - const std::string kPath = "/dbus_test"; - controller_ = new MockDBusMessageController(kService, kPath); - subscriber_ = new MockSubscriber(kService, kPath); - ASSERT_TRUE(controller_->Init()); - ASSERT_TRUE(subscriber_->Start()); - } - - void TearDown() OVERRIDE { - delete controller_; - delete subscriber_; - } - - bool waitCond(int seconds) { - if (one_thread) - return true; - timespec elapsed; - clock_gettime(CLOCK_REALTIME, &elapsed); - elapsed.tv_sec += seconds; - return pthread_cond_timedwait(&test_cond, &test_mutex, &elapsed) != - ETIMEDOUT; - } -}; - -pthread_mutex_t DBusMessageControllerTest::test_mutex; -pthread_cond_t DBusMessageControllerTest::test_cond; - -TEST_F(DBusMessageControllerTest, Receive) { - std::string text = "Test message for call method DBus"; - EXPECT_CALL(*controller_, Recv(text)).Times(1).WillOnce(SignalTest(this)); - subscriber_->Send(text); - EXPECT_TRUE(waitCond(1)); -} - -TEST_F(DBusMessageControllerTest, DISABLED_Send) { - const std::string kText = "Test message for signal DBus"; - // EXPECT_CALL(*subscriber_, Receive(kText)).Times(1); - controller_->Send(kText); -} - -} // namespace dbus -} // namespace components -} // namespace test diff --git a/src/components/dbus/test/include/dbus/mock_dbus_message_controller.h b/src/components/dbus/test/include/dbus/mock_dbus_message_controller.h deleted file mode 100644 index 30410a6c7e..0000000000 --- a/src/components/dbus/test/include/dbus/mock_dbus_message_controller.h +++ /dev/null @@ -1,75 +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_DBUS_TEST_INCLUDE_DBUS_MOCK_DBUS_MESSAGE_CONTROLLER_H_ -#define SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_DBUS_MESSAGE_CONTROLLER_H_ - -#include <pthread.h> -#include "dbus/dbus_message_controller.h" - -namespace test { -namespace components { -namespace dbus_test { - -class MockDBusMessageController : public ::dbus::DBusMessageController { - public: - MOCK_METHOD1(Recv, void(std::string&)); - - MockDBusMessageController(const std::string& serviceName, - const std::string& path) - : DBusMessageController(serviceName, path), thread_() {} - - virtual void processResponse(std::string method, Json::Value& root) {} - virtual void processRequest(Json::Value& root) {} - virtual void processNotification(Json::Value& root) {} - - bool Init() { - return ::hmi_message_handler::DBusMessageController::Init() && - pthread_create(&thread_, 0, &Run, this) == 0; - } - - private: - pthread_t thread_; - static void* Run(void* data) { - if (NULL != data) { - static_cast<MockDBusMessageController*>(data) - ->MethodForReceiverThread(nullptr); - } - return 0; - } -}; - -} // namespace dbus_test -} // namespace components -} // namespace test - -#endif // SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_DBUS_MESSAGE_CONTROLLER_H_ diff --git a/src/components/dbus/test/include/dbus/mock_subscriber.h b/src/components/dbus/test/include/dbus/mock_subscriber.h deleted file mode 100644 index b2a369e371..0000000000 --- a/src/components/dbus/test/include/dbus/mock_subscriber.h +++ /dev/null @@ -1,62 +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_DBUS_TEST_INCLUDE_DBUS_MOCK_SUBSCRIBER_H_ -#define SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_SUBSCRIBER_H_ - -#include <string> - -struct DBusConnection; - -namespace test { -namespace components { -namespace dbus { - -class MockSubscriber { - public: - MockSubscriber(const std::string nameService, const std::string path); - virtual ~MockSubscriber(); - virtual void Receive(); - bool Start(); - void Send(const std::string& message); - - private: - std::string nameService_; - std::string path_; - DBusConnection* conn_; -}; - -} // namespace dbus -} // namespace components -} // namespace test - -#endif // SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_SUBSCRIBER_H_ diff --git a/src/components/dbus/test/mock_subscriber.cc b/src/components/dbus/test/mock_subscriber.cc deleted file mode 100644 index 2c5dccaa50..0000000000 --- a/src/components/dbus/test/mock_subscriber.cc +++ /dev/null @@ -1,71 +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. -*/ - -#include "dbus/dbus.h" -#include "dbus/mock_subscriber.h" - -namespace test { -namespace components { -namespace dbus { - -MockSubscriber::MockSubscriber(const std::string nameService, - const std::string path) - : nameService_(nameService), path_(path), conn_(NULL) {} - -MockSubscriber::~MockSubscriber() {} - -void MockSubscriber::Receive() {} - -bool MockSubscriber::Start() { - DBusError err; - dbus_error_init(&err); - conn_ = dbus_bus_get(DBUS_BUS_SESSION, &err); - if (dbus_error_is_set(&err)) { - dbus_error_free(&err); - return false; - } - - std::string rule = "type='signal',interface='" + nameService_ + "'"; - dbus_bus_add_match(conn_, rule.c_str(), &err); - dbus_connection_flush(conn_); - if (dbus_error_is_set(&err)) { - dbus_error_free(&err); - return false; - } - return true; -} - -void MockSubscriber::Send(const std::string& message) {} - -} // namespace dbus -} // namespace components -} // namespace test diff --git a/src/components/dbus/test/schema_test.cc b/src/components/dbus/test/schema_test.cc deleted file mode 100644 index 37831279b9..0000000000 --- a/src/components/dbus/test/schema_test.cc +++ /dev/null @@ -1,118 +0,0 @@ -/* - * \file test_schema.cc - * \brief - * - * Copyright (c) 2013, 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. - */ - -#include <gtest/gtest.h> -#include "dbus/schema.h" - -using dbus::DBusSchema; -using dbus::MessageId; -using dbus::MessageName; -using dbus::MessageType; -using dbus::ListArgs; -using ford_message_descriptions::ParameterDescription; - -namespace test { -namespace components { -namespace dbus { - -class DBusSchemaTest : public ::testing::Test { - protected: - static void SetUpTestCase() { - schema_ = new DBusSchema(ford_message_descriptions::message_descriptions); - } - - static void TearDownTestCase() { - delete schema_; - } - - static const DBusSchema* schema_; - static const int test_negative_value = -3; -}; - -const DBusSchema* DBusSchemaTest::schema_ = 0; - -TEST_F(DBusSchemaTest, GetName) { - const MessageId kId = hmi_apis::FunctionID::Buttons_GetCapabilities; - const MessageName kExpName("Buttons", "GetCapabilities"); - MessageName name = schema_->getMessageName(kId); - EXPECT_EQ(kExpName, name); - - const MessageId kIdWrong = static_cast<const MessageId>(test_negative_value); - const MessageName kExpNameWrong("", ""); - name = schema_->getMessageName(kIdWrong); - EXPECT_EQ(kExpNameWrong, name); -} - -TEST_F(DBusSchemaTest, GetId) { - const MessageName kName("Buttons", "GetCapabilities"); - const MessageId kExpId = hmi_apis::FunctionID::Buttons_GetCapabilities; - MessageId id = schema_->getMessageId(kName); - EXPECT_EQ(kExpId, id); - - const MessageName kNameWrong("TestInterface", "TestMessage"); - const MessageId kExpIdWrong = hmi_apis::FunctionID::INVALID_ENUM; - id = schema_->getMessageId(kNameWrong); - EXPECT_EQ(kExpIdWrong, id); -} - -TEST_F(DBusSchemaTest, GetListArg) { - const MessageName kName("Buttons", "GetCapabilities"); - const MessageType kType = hmi_apis::messageType::response; - const MessageId kId = hmi_apis::FunctionID::Buttons_GetCapabilities; - ListArgs argsName = schema_->getListArgs(kName, kType); - const ParameterDescription** params = - ford_message_descriptions::message_descriptions[1]->parameters; - EXPECT_EQ(params[0], argsName[0]); - EXPECT_EQ(params[1], argsName[1]); - - ListArgs argsId = schema_->getListArgs(kId, kType); - EXPECT_EQ(params[0], argsId[0]); - EXPECT_EQ(params[1], argsId[1]); - - const MessageId kIdWrong = static_cast<const MessageId>(test_negative_value); - const MessageName kNameWrong("TestInterface", "TestMessage"); - const MessageType kTypeWrong = - static_cast<const MessageType>(test_negative_value); - const ListArgs kExpListWrong; - argsName = schema_->getListArgs(kNameWrong, kTypeWrong); - EXPECT_EQ(kExpListWrong, argsName); - - argsId = schema_->getListArgs(kIdWrong, kTypeWrong); - EXPECT_EQ(kExpListWrong, argsId); -} - -} // namespace dbus -} // namespace components -} // namespace test |