X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=service%2Fnotification%2Fcpp-wrapper%2Funittest%2FNSConsumerServiceTest.cpp;h=caa15020ac40e18c17bc293bc0d6f6bffe2a17e7;hb=7f00f942c39b7bc27c7eeecf213a239c3fe4173c;hp=e64b3e7108fb6f32889cd0210a1317ddcbf5a54e;hpb=143cc22acf28d20200c1f06cb60b30a249e9f354;p=platform%2Fupstream%2Fiotivity.git diff --git a/service/notification/cpp-wrapper/unittest/NSConsumerServiceTest.cpp b/service/notification/cpp-wrapper/unittest/NSConsumerServiceTest.cpp index e64b3e7..caa1502 100755 --- a/service/notification/cpp-wrapper/unittest/NSConsumerServiceTest.cpp +++ b/service/notification/cpp-wrapper/unittest/NSConsumerServiceTest.cpp @@ -39,7 +39,7 @@ namespace { NSProviderSimulator g_providerSimul; - OIC::Service::NSProvider *g_provider; + std::shared_ptr g_provider; std::atomic_bool g_isStartedStack(false); @@ -87,17 +87,17 @@ class NotificationServiceConsumerTest : public TestWithMock NotificationServiceConsumerTest() = default; ~NotificationServiceConsumerTest() = default; - static void ProviderDiscoveredCallbackEmpty( OIC::Service::NSProvider *) + static void ProviderDiscoveredCallbackEmpty( std::shared_ptr ) { std::cout << __func__ << std::endl; } - static void NotificationReceivedCallbackEmpty( OIC::Service::NSMessage *) + static void NotificationReceivedCallbackEmpty( OIC::Service::NSMessage ) { std::cout << __func__ << std::endl; } - static void SyncCallbackEmpty(OIC::Service::NSSyncInfo *) + static void SyncCallbackEmpty(OIC::Service::NSSyncInfo) { std::cout << __func__ << std::endl; } @@ -164,7 +164,7 @@ TEST_F(NotificationServiceConsumerTest, StopConsumerPositive) TEST_F(NotificationServiceConsumerTest, DiscoverProviderWithNonAccepterWhenStartedConsumerFirst) { mocks.ExpectCallFunc(ProviderDiscoveredCallbackEmpty).Do( - [this]( OIC::Service::NSProvider * provider) + [this]( std::shared_ptr provider) { std::cout << "Call Discovered" << std::endl; std::cout << provider->getProviderId() << std::endl; @@ -193,7 +193,7 @@ TEST_F(NotificationServiceConsumerTest, DiscoverProviderWithNonAccepterWhenStart } mocks.ExpectCallFunc(ProviderDiscoveredCallbackEmpty).Do( - [this]( OIC::Service::NSProvider * provider) + [this]( std::shared_ptr provider) { std::cout << "Call Discovered" << std::endl; g_provider = provider; @@ -206,13 +206,15 @@ TEST_F(NotificationServiceConsumerTest, DiscoverProviderWithNonAccepterWhenStart std::unique_lock< std::mutex > lock { mutexForCondition }; responseCon.wait_for(lock, g_waitForResponse); + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + } TEST_F(NotificationServiceConsumerTest, DiscoverProviderWithNonAccepterWhenRescan) { g_providerSimul.setAccepter((int)NSSelector::NS_SELECTION_CONSUMER); mocks.OnCallFunc(ProviderDiscoveredCallbackEmpty).Do( - [this]( OIC::Service::NSProvider * provider) + [this]( std::shared_ptr provider) { std::cout << "Call Discovered" << std::endl; g_provider = provider; @@ -237,6 +239,8 @@ TEST_F(NotificationServiceConsumerTest, ExpectSubscribeSuccess) responseCon.notify_all(); }); + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + g_provider->setListener( (OIC::Service::NSProvider::ProviderStateCallback) ProviderChangedCallbackEmpty, (OIC::Service::NSProvider::MessageReceivedCallback)NotificationReceivedCallbackEmpty, @@ -257,9 +261,9 @@ TEST_F(NotificationServiceConsumerTest, ExpectReceiveNotification) std::string msg = "msg"; mocks.ExpectCallFunc(NotificationReceivedCallbackEmpty).Do( - [this]( OIC::Service::NSMessage * message) + [this]( OIC::Service::NSMessage message) { - std::cout << "Income Notification : " << message->getMessageId() << std::endl; + std::cout << "Income Notification : " << message.getMessageId() << std::endl; responseCon.notify_all(); }); @@ -276,7 +280,7 @@ TEST_F(NotificationServiceConsumerTest, DiscoverProviderWithAccepterisProvider) g_providerSimul.setAccepter((int)NSSelector::NS_SELECTION_PROVIDER); mocks.ExpectCallFunc(ProviderDiscoveredCallbackEmpty).Do( - [this]( OIC::Service::NSProvider * provider) + [this]( std::shared_ptr provider) { std::cout << "Call Discovered" << std::endl; g_provider = provider; @@ -306,10 +310,10 @@ TEST_F(NotificationServiceConsumerTest, ExpectReceiveNotificationWithAccepterisP uint64_t revId = 1; mocks.OnCallFunc(NotificationReceivedCallbackEmpty).Do( - [this, & id, & revId](OIC::Service::NSMessage * message) + [this, & id, & revId](OIC::Service::NSMessage message) { - std::cout << "Income Notification : " << message->getMessageId() << std::endl; - revId = message->getMessageId(); + std::cout << "Income Notification : " << message.getMessageId() << std::endl; + revId = message.getMessageId(); responseCon.notify_all(); }); @@ -329,17 +333,17 @@ TEST_F(NotificationServiceConsumerTest, ExpectCallbackReadCheckWhenProviderNotif OIC::Service::NSSyncInfo::NSSyncType type = OIC::Service::NSSyncInfo::NSSyncType::NS_SYNC_DELETED; mocks.OnCallFunc(NotificationReceivedCallbackEmpty).Do( - [this]( OIC::Service::NSMessage * message) + [this]( OIC::Service::NSMessage message) { - std::cout << "Income Notification : " << message->getMessageId() << std::endl; + std::cout << "Income Notification : " << message.getMessageId() << std::endl; }); mocks.OnCallFunc(SyncCallbackEmpty).Do( - [& type, this](OIC::Service::NSSyncInfo * sync) + [& type, this](OIC::Service::NSSyncInfo sync) { - std::cout << "Income SyncInfo : " << sync->getMessageId() - << ", State : " << (int) sync->getState() << std::endl; - type = sync->getState(); + std::cout << "Income SyncInfo : " << sync.getMessageId() + << ", State : " << (int) sync.getState() << std::endl; + type = sync.getState(); responseCon.notify_all(); }); @@ -366,17 +370,17 @@ TEST_F(NotificationServiceConsumerTest, ExpectCallbackDismissCheckWhenProviderNo OIC::Service::NSSyncInfo::NSSyncType type = OIC::Service::NSSyncInfo::NSSyncType::NS_SYNC_READ; mocks.OnCallFunc(NotificationReceivedCallbackEmpty).Do( - [this]( OIC::Service::NSMessage * message) + [this]( OIC::Service::NSMessage message) { - std::cout << "Income Notification : " << message->getMessageId() << std::endl; + std::cout << "Income Notification : " << message.getMessageId() << std::endl; }); mocks.OnCallFunc(SyncCallbackEmpty).Do( - [& type, this](OIC::Service::NSSyncInfo * sync) + [& type, this](OIC::Service::NSSyncInfo sync) { - std::cout << "Income Notification : " << sync->getMessageId() - << ", State : " << (int) sync->getState() << std::endl; - type = sync->getState(); + std::cout << "Income Notification : " << sync.getMessageId() + << ", State : " << (int) sync.getState() << std::endl; + type = sync.getState(); responseCon.notify_all(); }); @@ -402,22 +406,24 @@ TEST_F(NotificationServiceConsumerTest, ExpectCallbackReadCheckWhenConsumerPostS std::string msg = "msg"; OIC::Service::NSSyncInfo::NSSyncType type = OIC::Service::NSSyncInfo::NSSyncType::NS_SYNC_DELETED; + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + mocks.OnCallFunc(NotificationReceivedCallbackEmpty).Do( - [this]( OIC::Service::NSMessage * message) + [this]( OIC::Service::NSMessage message) { - std::cout << "Income Notification : " << message->getMessageId() << std::endl; - g_provider->sendSyncInfo(message->getMessageId(), + std::cout << "Income Notification : " << message.getMessageId() << std::endl; + g_provider->sendSyncInfo(message.getMessageId(), OIC::Service::NSSyncInfo::NSSyncType::NS_SYNC_READ); std::unique_lock< std::mutex > lock { mutexForCondition }; responseCon.wait_for(lock, g_waitForResponse); }); mocks.OnCallFunc(SyncCallbackEmpty).Do( - [& type, this](OIC::Service::NSSyncInfo * sync) + [& type, this](OIC::Service::NSSyncInfo sync) { - std::cout << "Income Notification : " << sync->getMessageId() - << ", State : " << (int) sync->getState() << std::endl; - type = sync->getState(); + std::cout << "Income Notification : " << sync.getMessageId() + << ", State : " << (int) sync.getState() << std::endl; + type = sync.getState(); responseCon.notify_all(); }); @@ -437,22 +443,24 @@ TEST_F(NotificationServiceConsumerTest, ExpectCallbackDismissCheckWhenConsumerPo std::string msg = "msg"; OIC::Service::NSSyncInfo::NSSyncType type = OIC::Service::NSSyncInfo::NSSyncType::NS_SYNC_READ; + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + mocks.OnCallFunc(NotificationReceivedCallbackEmpty).Do( - [this]( OIC::Service::NSMessage * message) + [this]( OIC::Service::NSMessage message) { - std::cout << "Income Notification : " << message->getMessageId() << std::endl; - g_provider->sendSyncInfo(message->getMessageId(), + std::cout << "Income Notification : " << message.getMessageId() << std::endl; + g_provider->sendSyncInfo(message.getMessageId(), OIC::Service::NSSyncInfo::NSSyncType::NS_SYNC_DELETED); std::unique_lock< std::mutex > lock { mutexForCondition }; responseCon.wait_for(lock, g_waitForResponse); }); mocks.OnCallFunc(SyncCallbackEmpty).Do( - [& type, this](OIC::Service::NSSyncInfo * sync) + [& type, this](OIC::Service::NSSyncInfo sync) { - std::cout << "Income Notification : " << sync->getMessageId() - << ", State : " << (int) sync->getState() << std::endl; - type = sync->getState(); + std::cout << "Income Notification : " << sync.getMessageId() + << ", State : " << (int) sync.getState() << std::endl; + type = sync.getState(); responseCon.notify_all(); }); @@ -467,17 +475,22 @@ TEST_F(NotificationServiceConsumerTest, ExpectCallbackDismissCheckWhenConsumerPo TEST_F(NotificationServiceConsumerTest, ExpectGetProviderSuccessWithValidProviderId) { - OIC::Service::NSProvider *provider = - OIC::Service::NSConsumerService::getInstance()->getProvider(g_provider->getProviderId()); + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + + std::shared_ptr provider = + OIC::Service::NSConsumerService::getInstance()->getProvider( + g_provider->getProviderId()); int ret = strcmp(provider->getProviderId().c_str(), g_provider->getProviderId().c_str()); EXPECT_EQ(0, ret); } TEST_F(NotificationServiceConsumerTest, ExpectGetProviderSuccessWithInvalidProviderId) { - OIC::Service::NSProvider *provider = - OIC::Service::NSConsumerService::getInstance()->getProvider("123456789012345678901234567890123457"); - EXPECT_EQ(provider, (void *)NULL); + std::shared_ptr provider = + OIC::Service::NSConsumerService::getInstance()->getProvider( + "123456789012345678901234567890123457"); + bool res = (provider == nullptr); + EXPECT_EQ(res, 1); } TEST_F(NotificationServiceConsumerTest, ExpectCallbackTopicUpdated) @@ -513,12 +526,14 @@ TEST_F(NotificationServiceConsumerTest, ExpectEQTopicList) topics.push_back("2"); topics.push_back("3"); - std::list retTopic = g_provider->getTopicList()->getTopicsList(); + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + + auto retTopic = g_provider->getTopicList()->getTopicsList(); auto it1 = retTopic.begin(); auto it2 = topics.begin(); while ( it1 != retTopic.end() || it2 != topics.end() ) { - if ((*it1)->getTopicName() != *it2) + if ((*it1).getTopicName() != *it2) { isSame = false; break; } @@ -531,12 +546,17 @@ TEST_F(NotificationServiceConsumerTest, ExpectEQTopicList) TEST_F(NotificationServiceConsumerTest, ExpectFailUpdateTopicOnConsumer) { - OIC::Service::NSTopicsList *retTopic = g_provider->getTopicList(); + ASSERT_NE(nullptr, g_provider) << "error: discovery failure"; + + auto retTopic = g_provider->getTopicList(); for (auto it : retTopic->getTopicsList()) { - it->setState(OIC::Service::NSTopic::NSTopicState::SUBSCRIBED); + std::cout << "Topic Name: " << it.getTopicName() << std::endl; + std::cout << "state : " << (int) it.getState() << std::endl; + it.setState(OIC::Service::NSTopic::NSTopicState::SUBSCRIBED); } OIC::Service::NSResult ret = g_provider->updateTopicList(retTopic); + std::cout << "ret : " << (int) ret << std::endl; EXPECT_EQ(OIC::Service::NSResult::ERROR, ret); }