#include <iostream>
#include <vector>
#include <unistd.h>
+#include <memory>
#include "gtest/gtest.h"
#include "HippoMocks/hippomocks.h"
typedef std::function<void(const HeaderOptions&, const ResponseStatement&, int)> GetCallback;
- ResourcePresence * instance;
+ std::shared_ptr<ResourcePresence> instance;
PrimitiveResource::Ptr pResource;
BrokerCB cb;
BrokerID id;
void SetUp()
{
TestWithMock::SetUp();
-
- instance = (ResourcePresence*)new ResourcePresence();
+ instance.reset(new ResourcePresence());
pResource = PrimitiveResource::Ptr(mocks.Mock< PrimitiveResource >(), [](PrimitiveResource*){});
cb = ([](BROKER_STATE)->OCStackResult{return OC_STACK_OK;});
id = 0;
void TearDown()
{
TestWithMock::TearDown();
+ instance.reset();
pResource.reset();
id = 0;
cb = nullptr;
TEST_F(ResourcePresenceTest,initializeResourcePresence_NormalhandlingIfNormalResource)
{
-
MockingFunc();
-
instance->initializeResourcePresence(pResource);
ASSERT_NE(nullptr,instance->getPrimitiveResource());
-
}
TEST_F(ResourcePresenceTest,addBrokerRequester_ReturnNormalValueIfNormalParams)
{
-
MockingFunc();
-
instance->initializeResourcePresence(pResource);
id = 1;
instance->addBrokerRequester(id,cb);
TEST_F(ResourcePresenceTest,removeAllBrokerRequester_ErrorHandlingIfListNull)
{
-
MockingFunc();
instance->initializeResourcePresence(pResource);
TEST_F(ResourcePresenceTest,getResourceState_NormalHandling)
{
-
+ MockingFunc();
+ instance->initializeResourcePresence(pResource);
ASSERT_EQ(BROKER_STATE::REQUESTED,instance->getResourceState());
}
}
+TEST_F(ResourcePresenceTest,isEmptyRequester_NormalHandling)
+{
+
+ MockingFunc();
+
+ instance->initializeResourcePresence(pResource);
+ id = 1;
+ instance->addBrokerRequester(id,cb);
+ instance->removeAllBrokerRequester();
+ ASSERT_TRUE(instance->isEmptyRequester());
+
+}
+
TEST_F(ResourcePresenceTest,getCB_NormalHandlingIfMessageOC_STACK_OK)
{
OIC::Service::HeaderOptions op;
RCSResourceAttributes attr;
OIC::Service::ResponseStatement res(attr);
+
callback(op,res,OC_STACK_OK);
});
+
mocks.OnCall(pResource.get(), PrimitiveResource::requestGet).Do(
[](GetCallback callback){
std::cout <<"End call requestGetFunc()\n";
});
- mocks.ExpectCall(pResource.get(), PrimitiveResource::getHost).Return("address1");
- mocks.ExpectCall(pResource.get(), PrimitiveResource::getHost).Return("address2");
+ mocks.OnCall(pResource.get(), PrimitiveResource::getHost).Return("address1");
+
mocks.OnCallFuncOverload(static_cast< subscribePresenceSig1 >(OC::OCPlatform::subscribePresence)).Do(
[](OC::OCPlatform::OCPresenceHandle&,
const std::string&, OCConnectivityType, SubscribeCallback callback)->OCStackResult{
}
-TEST_F(ResourcePresenceTest,isEmptyRequester_NormalHandling)
-{
-
- MockingFunc();
- instance->initializeResourcePresence(pResource);
- id = 1;
- instance->addBrokerRequester(id,cb);
- instance->removeAllBrokerRequester();
- ASSERT_TRUE(instance->isEmptyRequester());
-}