From: Kichan Kwon Date: Mon, 13 Jul 2020 03:15:36 +0000 (+0900) Subject: test : compare values with template function X-Git-Tag: submit/tizen/20201102.030555~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F42%2F238342%2F2;p=platform%2Fcore%2Fapi%2Fsystem-info.git test : compare values with template function - To remove duplicated source code Change-Id: Ifb7c1df91228a07cecedbc066c6d9414c8052db5 Signed-off-by: Kichan Kwon --- diff --git a/test/init_db/feature.cpp b/test/init_db/feature.cpp index 3a35dd0..b4642f8 100644 --- a/test/init_db/feature.cpp +++ b/test/init_db/feature.cpp @@ -19,6 +19,20 @@ Feature::ModType Feature::getModType(void) return (ModType)(rand() % static_cast(ModType::NUM_TYPE)); } +template +int Feature::compareValue(T value, T expected) +{ + if (value != expected) { + LOG << "Failed to verify value : key(" << key + << "), value(" << value + << "), expected(" << expected + << ")" << ENDL; + return -1; + } + + return SUCCEED; +} + /********** BoolFeature **********/ BoolFeature::BoolFeature(std::string k, std::string v) : Feature(k) @@ -63,15 +77,7 @@ int BoolFeature::verifyValue(void) return ret; } - if (value != output) { - LOG << "Failed to verify value : key(" << key - << "), value(" << (output ? STRBOOL_TRUE : STRBOOL_FALSE) - << "), expected(" << (value ? STRBOOL_TRUE : STRBOOL_FALSE) - << ")" << ENDL; - return -1; - } - - return SUCCEED; + return compareValue(output, value); } /********** IntFeature **********/ @@ -114,14 +120,7 @@ int IntFeature::verifyValue(void) return ret; } - if (value != output) { - LOG << "Failed to verify value : key(" << key - << "), value(" << output - << "), expected(" << value << ")" << ENDL; - return -1; - } - - return SUCCEED; + return compareValue(output, value); } /********** DoubleFeature **********/ @@ -166,15 +165,7 @@ int DoubleFeature::verifyValue(void) return ret; } - if (value != output) { - LOG << std::fixed << std::setprecision(15) - << "Failed to verify value : key(" << key - << "), value(" << output - << "), expected(" << value << ")" << ENDL; - return -1; - } - - return SUCCEED; + return compareValue(output, value); } /********** StringFeature **********/ @@ -214,12 +205,8 @@ int StringFeature::verifyValue(void) return ret; } - if (value.compare(output)) { - LOG << "Failed to verify value : key(" << key - << "), value(" << output - << "), expected(" << value << ")" << ENDL; - return -1; - } + ret = compareValue(std::string(output), value); + delete(output); - return SUCCEED; + return ret; } diff --git a/test/init_db/feature.h b/test/init_db/feature.h index 07489af..980f5db 100644 --- a/test/init_db/feature.h +++ b/test/init_db/feature.h @@ -36,6 +36,13 @@ protected: * @retval Refer to ModType */ ModType getModType(void); + + /** + * @brief Compare two values + * @retval SUCCEED if they are same, otherwise -1 + */ + template + int compareValue(T value, T expected); }; extern std::vectorfeatureList;