From: coderhyme Date: Tue, 23 Jun 2015 08:14:06 +0000 (+0900) Subject: Add unit test for discoverResource X-Git-Tag: 1.2.0+RC1~1430^2~105 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4ad0a1f42b17976849d5b839e2a507e41d25b715;p=platform%2Fupstream%2Fiotivity.git Add unit test for discoverResource Change-Id: I69a11e7f130d681bce41e4ff32cb1f0a67994fb5 Signed-off-by: coderhyme Reviewed-on: https://gerrit.iotivity.org/gerrit/1397 Tested-by: jenkins-iotivity Reviewed-by: Uze Choi --- diff --git a/service/basis/common/primitiveResource/unittests/PrimitiveResourceTest.cpp b/service/basis/common/primitiveResource/unittests/PrimitiveResourceTest.cpp index 87a7d78..1c9f17b 100644 --- a/service/basis/common/primitiveResource/unittests/PrimitiveResourceTest.cpp +++ b/service/basis/common/primitiveResource/unittests/PrimitiveResourceTest.cpp @@ -22,10 +22,10 @@ #include #include +#include #include - -#include +#include using namespace testing; using namespace OIC::Service; @@ -175,3 +175,44 @@ TEST_F(PrimitiveResourceTest, ResponseStatementHasSameValuesWithOCRepresentation ); } + +class DiscoverResourceTest: public Test +{ +public: + MockRepository mocks; + + typedef OCStackResult (*FindResource)(const std::string&, const std::string&, + OCConnectivityType, OC::FindCallback); + + static void discovered(std::shared_ptr< PrimitiveResource >) + { + } + +}; + + + +TEST_F(DiscoverResourceTest, CallbackIsInvokedWhenResourceIsDiscovered) +{ + mocks.ExpectCallFuncOverload(static_cast(OC::OCPlatform::findResource)).Do( + [](const std::string&, const std::string&, OCConnectivityType, + OC::FindCallback callback) -> OCStackResult + { + callback(nullptr); + return OC_STACK_OK; + } + ).Return(OC_STACK_OK); + + mocks.ExpectCallFunc(discovered); + + discoverResource("", "", OCConnectivityType{ }, discovered); +} + +TEST_F(DiscoverResourceTest, ThrowsdWhenOCPlatformFindResourceReturnsNotOK) +{ + mocks.ExpectCallFuncOverload(static_cast(OC::OCPlatform::findResource)). + Return(OC_STACK_ERROR); + + EXPECT_THROW(discoverResource("", "", OCConnectivityType{ }, discovered), PlatformException); +} +