Increase code coverage 58/320658/4
authorJakub Wlostowski <j.wlostowski@samsung.com>
Wed, 20 Nov 2024 10:58:29 +0000 (11:58 +0100)
committerJakub Wlostowski <j.wlostowski@samsung.com>
Wed, 20 Nov 2024 12:31:38 +0000 (13:31 +0100)
Change-Id: I5b5963b189c2b97e3699213bba6d540bebb3f717

CMakeLists.txt
tests/client-request-test.cpp
tests/serialization-test.cpp
tests/utils-tests.cpp

index 6701f91345fb33366d4389c796f3c616095ef185..215675f448472788af7dca501b2d1d93cc2f0b1a 100644 (file)
@@ -32,8 +32,8 @@ SET(CMAKE_C_FLAGS_DEBUG        "-g -std=c99 -O0 -ggdb -Wp,-U_FORTIFY_SOURCE")
 SET(CMAKE_CXX_FLAGS_DEBUG      "-g -std=c++17 -O0 -ggdb -Wp,-U_FORTIFY_SOURCE")
 SET(CMAKE_C_FLAGS_RELEASE      "-g -std=c99 -O2")
 SET(CMAKE_CXX_FLAGS_RELEASE    "-g -std=c++17 -O2")
-SET(CMAKE_C_FLAGS_CCOV         "-g -std=c99 -O2 --coverage")
-SET(CMAKE_CXX_FLAGS_CCOV       "-g -std=c++17 -O2 --coverage")
+SET(CMAKE_C_FLAGS_CCOV         "-g -std=c99 -O0 -ggdb --coverage -Wp,-U_FORTIFY_SOURCE")
+SET(CMAKE_CXX_FLAGS_CCOV       "-g -std=c++17 -O0 -ggdb --coverage -Wp,-U_FORTIFY_SOURCE")
 
 # If gcov enabled, add build options and set the variable used in source codes
 IF(GCOV_BUILD)
index 7f352b54761359a6523880eb2abefad0c021029e..593f489d5abfd40ee982f1c38b4e0ed4f91440c1 100644 (file)
@@ -640,6 +640,15 @@ TEST_F(ClientRequestTest, not_allowed_Negative)
     EXPECT_EQ(ret, 0);
 }
 
+TEST_F(ClientRequestTest, close_connection_Positive)
+{
+    WA::SocketManager manager;
+    auto service = std::make_unique<WA::TestService>(std::make_shared<TestDLLoader>());
+    manager.RegisterSocketService(std::move(service));
+    WA::SocketManager::ConnectionID id = {0, 0};
+    EXPECT_NO_THROW(manager.Close(id));
+}
+
 TEST_F(ClientRequestTest, cancel_Positive)
 {
     int ret = 1;
index 534d8cd630b459651cb79eef1921a97ca4be33f8..147a055ec2851af2cde0a36f023ca1f20eb9f405 100644 (file)
@@ -1301,4 +1301,11 @@ TEST_F(WAuthnSerializationTest, multiple_serialization_ga_res_Positive)
             __compareWAuthnPubkeyCredentialAssertionS);
 }
 
+TEST_F(WAuthnSerializationTest, message_buffer_clear_Positive)
+{
+    MessageBuffer buffer;
+    buffer.InitForStreaming();
+    EXPECT_NO_THROW(buffer.Clear());
+}
+
 } // namespace WA
index 7a73f37229e121050d2c272b8dc06184e53e9f8f..d80032c98a4570314c32bb59f0dc0d0eddc97e2b 100644 (file)
@@ -22,6 +22,7 @@
 #include <gtest/gtest.h>
 #include <iostream>
 #include <limits>
+#include <string>
 #include <utils.h>
 #include "test-common.h"
 
@@ -52,6 +53,17 @@ protected:
     }
 };
 
+class UnknownException {
+public:
+    UnknownException(std::string message) : m_message(std::move(message)) {}
+
+    const char* what() const noexcept {
+        return m_message.c_str();
+    }
+private:
+    std::string m_message;
+};
+
 TEST_F(UtilsTest, handle_exceptions_by_try_catch_functions_Positive)
 {
     int ret = try_catch([&]() -> int {
@@ -109,6 +121,11 @@ TEST_F(UtilsTest, handle_exceptions_by_try_catch_functions_Positive)
     });
     EXPECT_EQ(ret, WAUTHN_ERROR_UNKNOWN);
 
+    ret = try_catch([&]() -> int {
+        throw UnknownException("unknown_error");
+    });
+    EXPECT_EQ(ret, WAUTHN_ERROR_UNKNOWN);
+
     ret = try_catch([&]() -> int {
         return WAUTHN_ERROR_NONE;
     });
@@ -1371,4 +1388,14 @@ TEST_F(UtilsTest, check_parameter_GA_Positive)
     EXPECT_EQ(ret, WAUTHN_ERROR_NONE);
 }
 
+TEST_F(UtilsTest, display_known_unknown_exception_Positive)
+{
+    try {
+        ThrowMsg(SerializationException::InvalidStreamData, "Error");
+    } catch (const SerializationException::InvalidStreamData &e) {
+        EXPECT_NO_THROW(WA::Exception::DisplayKnownException(e));
+    }
+    EXPECT_NO_THROW(WA::Exception::DisplayUnknownException());
+}
+
 } // namespace WebAuthn