test_dynamic_addon_factory.cpp
Go to the documentation of this file.
1 
11 #include "test_dynamic_addon.h"
12 
14 
15 #include <gtest/gtest.h>
16 
17 
18 #ifndef DYNAMIC_ADDON_PATH
19 #define DYNAMIC_ADDON_PATH "./libtest_dynamic_addon.so"
20 #endif
21 
23 
24 TEST(DynamicAddonFactory, CanCreateAddons)
25 {
26  Common::AddonFactory::UniquePtr dynamicFactory = Common::CreateDynamicAddonFactory(modulePath);
27  ASSERT_TRUE(static_cast<bool>(dynamicFactory->CreateAddon()));
28 }
29 
30 TEST(DynamicAddonFactory, AddonInterfaceCastsToManagerInterface)
31 {
32  Common::AddonFactory::UniquePtr dynamicFactory = Common::CreateDynamicAddonFactory(modulePath);
33  std::shared_ptr<Common::Addon> addon(dynamicFactory->CreateAddon());
34  std::shared_ptr<OpcCoreTests::TestDynamicAddon> testAddon = std::dynamic_pointer_cast<OpcCoreTests::TestDynamicAddon>(addon);
35  ASSERT_TRUE(static_cast<bool>(testAddon));
36 }
37 
38 TEST(DynamicAddonFactory, CanCallMethodsOfAddon)
39 {
40  Common::AddonFactory::UniquePtr dynamicFactory = Common::CreateDynamicAddonFactory(modulePath);
41  std::shared_ptr<Common::Addon> addon(dynamicFactory->CreateAddon());
42  std::shared_ptr<OpcCoreTests::TestDynamicAddon> testAddon = std::dynamic_pointer_cast<OpcCoreTests::TestDynamicAddon>(addon);
43  ASSERT_EQ(testAddon->GetStringWithHello(), std::string("hello"));
44 }
45 
TEST(DynamicAddonFactory, CanCreateAddons)
#define DYNAMIC_ADDON_PATH
Dynamic addon for tests. GNU LGPL.
const char * modulePath
#define ASSERT_TRUE(condition)
AddonFactory::UniquePtr CreateDynamicAddonFactory(const char *modulePath)
#define ASSERT_EQ(val1, val2)


ros_opcua_impl_freeopcua
Author(s): Denis Štogl
autogenerated on Tue Jan 19 2021 03:12:08