This is an automated email from the ASF dual-hosted git repository.

pengzheng pushed a commit to branch feature/error_injector
in repository https://gitbox.apache.org/repos/asf/celix.git


The following commit(s) were added to refs/heads/feature/error_injector by this 
push:
     new 79541b1c Separate error injection tests from common tests and turn 
them off on macOS.
79541b1c is described below

commit 79541b1c331e52ca3fc064ecacc303bfd0ce515e
Author: PengZheng <[email protected]>
AuthorDate: Sun Jan 22 16:46:10 2023 +0800

    Separate error injection tests from common tests and turn them off on macOS.
---
 CMakeLists.txt                                     |  13 +-
 .../pubsub_protocol_lib/gtest/CMakeLists.txt       |  10 +-
 ...WP_common_tests.cc => PS_WP_common_ei_tests.cc} | 181 ++-------------------
 .../gtest/src/PS_WP_common_tests.cc                |  77 +--------
 misc/error_injector/CMakeLists.txt                 |   6 +-
 5 files changed, 34 insertions(+), 253 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index a671f26a..85dc825d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -15,7 +15,7 @@
 # specific language governing permissions and limitations
 # under the License.
 
-cmake_minimum_required (VERSION 3.14)
+cmake_minimum_required (VERSION 3.18)
 cmake_policy(SET CMP0012 NEW)
 cmake_policy(SET CMP0042 NEW)
 cmake_policy(SET CMP0068 NEW)
@@ -72,7 +72,7 @@ ENDIF()
 # Options
 option(ENABLE_TESTING "Enables unit/bundle testing" FALSE)
 if (ENABLE_TESTING)
-    find_package(GTest CONFIG QUIET)
+    find_package(GTest QUIET)
     if (NOT GTest_FOUND)
         include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/AddGTest.cmake)
     endif()
@@ -194,6 +194,13 @@ if (CELIX_INSTALL_DEPRECATED_API)
     set(CMAKE_CXX_FLAGS "-Wno-deprecated-declarations ${CMAKE_CXX_FLAGS}")
 endif ()
 
+include(CMakePushCheckState)
+cmake_push_check_state()
+cmake_reset_check_state()
+include(CheckLinkerFlag)
+check_linker_flag(CXX LINKER:--wrap,celix_nonexistent_symbol 
LINKER_WRAP_SUPPORTED)
+cmake_pop_check_state()
+
 #Libraries and Launcher
 add_subdirectory(libs)
 
@@ -204,7 +211,7 @@ add_subdirectory(bundles)
 add_subdirectory(misc/experimental)
 
 # Error Injectors
-if (ENABLE_TESTING)
+if (ENABLE_TESTING AND LINKER_WRAP_SUPPORTED)
     add_subdirectory(misc/error_injector)
 endif ()
 
diff --git 
a/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/CMakeLists.txt 
b/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/CMakeLists.txt
index 47f99620..2d307bf6 100644
--- a/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/CMakeLists.txt
+++ b/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/CMakeLists.txt
@@ -20,4 +20,12 @@ target_include_directories(celix_pswp_common_tests PRIVATE 
${CMAKE_CURRENT_SOURC
 target_link_libraries(celix_pswp_common_tests PRIVATE 
celix_pubsub_protocol_lib GTest::gtest Celix::pubsub_spi GTest::gtest_main 
malloc_ei celix_properties_ei)
 
 add_test(NAME celix_pswp_common_tests COMMAND celix_pswp_common_tests)
-setup_target_for_coverage(celix_pswp_common_tests SCAN_DIR ..)
\ No newline at end of file
+setup_target_for_coverage(celix_pswp_common_tests SCAN_DIR ..)
+
+if (LINKER_WRAP_SUPPORTED)
+    add_executable(celix_pswp_common_ei_tests src/PS_WP_common_ei_tests.cc)
+    target_include_directories(celix_pswp_common_ei_tests PRIVATE 
${CMAKE_CURRENT_SOURCE_DIR}/../src)
+    target_link_libraries(celix_pswp_common_ei_tests PRIVATE 
celix_pubsub_protocol_lib GTest::gtest Celix::pubsub_spi GTest::gtest_main 
malloc_ei celix_properties_ei)
+
+    add_test(NAME celix_pswp_common_ei_tests COMMAND 
celix_pswp_common_ei_tests)
+endif ()
\ No newline at end of file
diff --git 
a/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
 
b/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_ei_tests.cc
similarity index 50%
copy from 
bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
copy to 
bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_ei_tests.cc
index 93ecabed..ae43599a 100644
--- 
a/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
+++ 
b/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_ei_tests.cc
@@ -27,153 +27,17 @@
 
 #include "pubsub_wire_protocol_common.h"
 
-class WireProtocolCommonTest : public ::testing::Test {
+class WireProtocolCommonEiTest : public ::testing::Test {
 public:
-    WireProtocolCommonTest() = default;
-    ~WireProtocolCommonTest() override {
+    WireProtocolCommonEiTest() = default;
+    ~WireProtocolCommonEiTest() override {
         celix_ei_expect_realloc(nullptr, 0, nullptr);
         celix_ei_expect_calloc(nullptr, 0, nullptr);
         celix_ei_expect_celix_properties_create(nullptr, 0, nullptr);
     };
 };
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithSingleEntries) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 0;
-    message.metadata.metadata = celix_properties_create();
-    celix_properties_set(message.metadata.metadata, "key1", "value1");
-    size_t neededNetstringLength = 16;  //4:key1,6:value1, (16 chars)
-
-    char *data = nullptr;
-    size_t length = 0;
-    size_t contentLength = 0;
-    celix_status_t status = pubsubProtocol_encodeMetadata(&message, &data, 
&length, &contentLength);
-    EXPECT_TRUE(status == CELIX_SUCCESS);
-    EXPECT_EQ(contentLength, neededNetstringLength + 4);
-
-    //note first 4 bytes are an int with the nr of metadata entries (6);
-    uint32_t nrOfMetadataEntries;
-    pubsubProtocol_readInt((unsigned char*)data, 0, 
message.header.convertEndianess, &nrOfMetadataEntries);
-    EXPECT_EQ(1, nrOfMetadataEntries);
-    EXPECT_GE(length, neededNetstringLength + 4 
/*sizeof(nrOfMetadataEntries)*/);
-
-    //create null terminated string from netstring entries in the data buffer 
(- first 4 bytes + null terminating entry)
-    char checkStr[32];
-    ASSERT_GE(sizeof(checkStr), neededNetstringLength);
-    strncpy(checkStr, data+4, neededNetstringLength);
-    checkStr[neededNetstringLength] = '\0';
-    EXPECT_STREQ("4:key1,6:value1,", checkStr);
-
-    free(data);
-    celix_properties_destroy(message.metadata.metadata);
-}
-
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithMultipleEntries) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 1;
-    message.metadata.metadata = celix_properties_create();
-    celix_properties_set(message.metadata.metadata, "key1", "value1");      
//4:key1,6:value1, (16 chars)
-    celix_properties_set(message.metadata.metadata, "key2", "value2");      
//4:key2,6:value2, (16 chars)
-    celix_properties_set(message.metadata.metadata, "key3", "value3");      
//4:key3,6:value3, (16 chars)
-    celix_properties_set(message.metadata.metadata, "key4", "value4");      
//4:key4,6:value4, (16 chars)
-    celix_properties_set(message.metadata.metadata, "key5", "value5");      
//4:key5,6:value5, (16 chars)
-    celix_properties_set(message.metadata.metadata, "key111", "value111");  
//6:key111,8:value111, (20 chars)
-    size_t neededNetstringLength = 100;                                     
//Total: 5 * 16 + 20 = 100
-
-
-    char *data = nullptr;
-    size_t length = 0;
-    size_t contentLength = 0;
-    celix_status_t status = pubsubProtocol_encodeMetadata(&message, &data, 
&length, &contentLength);
-    EXPECT_TRUE(status == CELIX_SUCCESS);
-    EXPECT_EQ(contentLength, neededNetstringLength + 4);
-
-    //note first 4 bytes are a int with the nr of metadata entries (6);
-    uint32_t nrOfMetadataEntries;
-    pubsubProtocol_readInt((unsigned char*)data, 0, 
message.header.convertEndianess, &nrOfMetadataEntries);
-    EXPECT_EQ(6, nrOfMetadataEntries);
-
-
-    //create null terminated string from netstring entries in the data buffer 
(- first 4 bytes + null terminating entry)
-    char checkStr[128];
-    ASSERT_GE(sizeof(checkStr), neededNetstringLength);
-    strncpy(checkStr, data+4, neededNetstringLength);
-    checkStr[neededNetstringLength] = '\0';
-
-    //NOTE because celix properties can reorder entries (hashmap), check if 
the expected str parts are in the data.
-    EXPECT_NE(nullptr, strstr(checkStr, "4:key1,6:value1,")); //entry 1
-    EXPECT_NE(nullptr, strstr(checkStr, "4:key2,6:value2,")); //entry 2
-    EXPECT_NE(nullptr, strstr(checkStr, "4:key3,6:value3,")); //entry 3
-    EXPECT_NE(nullptr, strstr(checkStr, "4:key4,6:value4,")); //entry 4
-    EXPECT_NE(nullptr, strstr(checkStr, "4:key5,6:value5,")); //entry 5
-    EXPECT_NE(nullptr, strstr(checkStr, "6:key111,8:value111,")); //entry 6 
(with value 111)
-
-    free(data);
-    celix_properties_destroy(message.metadata.metadata);
-}
-
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithNullOrEmptyArguments) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 0;
-    message.metadata.metadata = nullptr;
-
-    char *data = nullptr;
-    size_t length = 0;
-    size_t contentLength = 0;
-    celix_status_t status = pubsubProtocol_encodeMetadata(&message, &data, 
&length, &contentLength);
-
-    EXPECT_EQ(status, CELIX_SUCCESS);
-    EXPECT_EQ(contentLength, 4);
-
-    //note first 4 bytes are a int with the nr of metadata entries (0);
-    uint32_t nrOfMetadataEntries;
-    pubsubProtocol_readInt((unsigned char*)data, 0, 
message.header.convertEndianess, &nrOfMetadataEntries);
-    EXPECT_EQ(0, nrOfMetadataEntries);
-    free(data);
-
-    data = nullptr;
-    length = 0;
-    message.metadata.metadata = celix_properties_create(); //note empty
-
-    status = pubsubProtocol_encodeMetadata(&message, &data, &length, 
&contentLength);
-    EXPECT_EQ(status, CELIX_SUCCESS);
-    EXPECT_EQ(contentLength, 4);
-
-    //note first 4 bytes are a int with the nr of metadata entries (0);
-    pubsubProtocol_readInt((unsigned char*)data, 0, 
message.header.convertEndianess, &nrOfMetadataEntries);
-    EXPECT_EQ(0, nrOfMetadataEntries);
-    free(data);
-    celix_properties_destroy(message.metadata.metadata);
-}
-
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeWithExistinBufferWhichAlsoNeedsSomeRealloc) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 0;
-    message.metadata.metadata = nullptr;
-
-    char *data = (char*)malloc(2);
-    size_t length = 2;
-    size_t contentLength = 0;
-    celix_status_t status = pubsubProtocol_encodeMetadata(&message, &data, 
&length, &contentLength);
-    EXPECT_EQ(status, CELIX_SUCCESS);
-    EXPECT_GT(length, 2);
-
-    message.metadata.metadata = celix_properties_create();
-    char key[32];
-    //create a lot of metadata entries
-    for (int i = 0; i < 1000; ++i) {
-        snprintf(key, sizeof(key), "key%i", i);
-        celix_properties_set(message.metadata.metadata, key, 
"abcdefghijklmnop");
-    }
-    //note reusing data
-    status = pubsubProtocol_encodeMetadata(&message, &data, &length, 
&contentLength);
-    EXPECT_EQ(status, CELIX_SUCCESS);
-
-    free(data);
-    celix_properties_destroy(message.metadata.metadata);
-}
-
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithNoMemoryLeft) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_EncodeMetadataWithNoMemoryLeft) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
     message.metadata.metadata = celix_properties_create();
@@ -209,7 +73,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithNoMemory
     celix_properties_destroy(message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEntries) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
     message.metadata.metadata = nullptr;
@@ -227,7 +91,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEn
     celix_properties_destroy(message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataWithMultipleEntries) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_DencodeMetadataWithMultipleEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 1;
     message.metadata.metadata = nullptr;
@@ -247,7 +111,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataWithMultipl
     celix_properties_destroy(message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataWithExtraEntries) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_DencodeMetadataWithExtraEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 1;
     message.metadata.metadata = nullptr;
@@ -267,7 +131,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataWithExtraEn
     celix_properties_destroy(message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataMissingEntries) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_DencodeMetadataMissingEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 1;
     message.metadata.metadata = nullptr;
@@ -283,7 +147,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataMissingEntr
     free(data);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEntryWithIncompleteValue) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEntryWithIncompleteValue) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
     message.metadata.metadata = nullptr;
@@ -299,7 +163,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEn
     free(data);
 }
 
-TEST_F(WireProtocolCommonTest, WireProtocolCommonTest_DecodeMetadataTooShort) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_DecodeMetadataTooShort) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
     message.metadata.metadata = nullptr;
@@ -314,7 +178,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeMetadataTooShort) {
     free(data);
 }
 
-TEST_F(WireProtocolCommonTest, WireProtocolCommonTest_DecodeEmptyMetadata) {
+TEST_F(WireProtocolCommonEiTest, WireProtocolCommonTest_DecodeEmptyMetadata) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
     message.metadata.metadata = nullptr;
@@ -333,7 +197,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeEmptyMetadata) {
     EXPECT_EQ(nullptr, message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_NotEnoughMemoryForMultipleEntries) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_NotEnoughMemoryForMultipleEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 1;
     message.metadata.metadata = nullptr;
@@ -351,7 +215,7 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_NotEnoughMemoryForMultiple
     free(data);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_PropertiesAllocFailureWhenDecodingMetadata) {
+TEST_F(WireProtocolCommonEiTest, 
WireProtocolCommonTest_PropertiesAllocFailureWhenDecodingMetadata) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
     message.metadata.metadata = nullptr;
@@ -367,22 +231,3 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_PropertiesAllocFailureWhen
 
     free(data);
 }
-
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataWithDuplicateEntries) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 1;
-    message.metadata.metadata = nullptr;
-
-    char* data = 
strdup("ABCD4:key1,6:value1,4:key1,6:value2,6:key111,8:value111,"); //note 3 
entries with duplicate key1
-    auto len = strlen(data);
-    pubsubProtocol_writeInt((unsigned char*)data, 0, 
message.header.convertEndianess, 3);
-    auto status = pubsubProtocol_decodeMetadata((void*)data, len, &message);
-
-    EXPECT_EQ(status, CELIX_SUCCESS);
-    EXPECT_EQ(2, celix_properties_size(message.metadata.metadata));
-    EXPECT_STREQ("value2", celix_properties_get(message.metadata.metadata, 
"key1", "not-found"));
-    EXPECT_STREQ("value111", celix_properties_get(message.metadata.metadata, 
"key111", "not-found"));
-
-    free(data);
-    celix_properties_destroy(message.metadata.metadata);
-}
diff --git 
a/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
 
b/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
index 93ecabed..3cb0d6b4 100644
--- 
a/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
+++ 
b/bundles/pubsub/pubsub_protocol/pubsub_protocol_lib/gtest/src/PS_WP_common_tests.cc
@@ -30,11 +30,7 @@
 class WireProtocolCommonTest : public ::testing::Test {
 public:
     WireProtocolCommonTest() = default;
-    ~WireProtocolCommonTest() override {
-        celix_ei_expect_realloc(nullptr, 0, nullptr);
-        celix_ei_expect_calloc(nullptr, 0, nullptr);
-        celix_ei_expect_celix_properties_create(nullptr, 0, nullptr);
-    };
+    ~WireProtocolCommonTest() = default;
 };
 
 TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithSingleEntries) {
@@ -173,42 +169,6 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeWithExistinBufferWhi
     celix_properties_destroy(message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_EncodeMetadataWithNoMemoryLeft) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 0;
-    message.metadata.metadata = celix_properties_create();
-    celix_properties_set(message.metadata.metadata, "key1", "value1");
-
-    //Scenario: No mem with no pre-allocated data
-    //Given (mocked) realloc is forced to return NULL
-    celix_ei_expect_realloc((void *)pubsubProtocol_encodeMetadata, 0, nullptr);
-
-    //When I try to encode a metadata
-    char *data = nullptr;
-    size_t length = 0;
-    size_t contentLength = 0;
-    auto status = pubsubProtocol_encodeMetadata(&message, &data, &length, 
&contentLength);
-    //Then I expect a failure
-    EXPECT_NE(status, CELIX_SUCCESS);
-
-    //Scenario: No mem with some pre-allocated data
-    //Given a data set with some space
-    data = (char*)malloc(16);
-    length = 16;
-
-    //And (mocked) realloc is forced to return NULL
-    celix_ei_expect_realloc((void *)pubsubProtocol_encodeMetadata, 0, nullptr);
-
-    //When I try to encode a metadata
-    status = pubsubProtocol_encodeMetadata(&message, &data, &length, 
&contentLength);
-
-    //Then I expect a failure
-    EXPECT_NE(status, CELIX_SUCCESS);
-
-    free(data);
-    celix_properties_destroy(message.metadata.metadata);
-}
-
 TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeMetadataWithSingleEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 0;
@@ -333,41 +293,6 @@ TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DecodeEmptyMetadata) {
     EXPECT_EQ(nullptr, message.metadata.metadata);
 }
 
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_NotEnoughMemoryForMultipleEntries) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 1;
-    message.metadata.metadata = nullptr;
-
-    char* data = 
strdup("ABCD4:key1,6:value1,4:key2,6:value2,6:key111,8:value111,"); //note 3 
entries
-    auto len = strlen(data);
-    pubsubProtocol_writeInt((unsigned char*)data, 0, 
message.header.convertEndianess, 3);
-    for (int i = 0; i < 6; ++i) {
-        celix_ei_expect_calloc((void *)pubsubProtocol_decodeMetadata, 0, 
nullptr, i+1);
-        auto status = pubsubProtocol_decodeMetadata((void*)data, len, 
&message);
-
-        EXPECT_EQ(status, CELIX_ENOMEM);
-        EXPECT_EQ(nullptr, message.metadata.metadata);
-    }
-    free(data);
-}
-
-TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_PropertiesAllocFailureWhenDecodingMetadata) {
-    pubsub_protocol_message_t message;
-    message.header.convertEndianess = 0;
-    message.metadata.metadata = nullptr;
-
-    char* data = strdup("ABCD4:key1,6:value1,"); //note 1 entry
-    auto len = strlen(data);
-    pubsubProtocol_writeInt((unsigned char*)data, 0, 
message.header.convertEndianess, 1);
-    
celix_ei_expect_celix_properties_create((void*)pubsubProtocol_decodeMetadata, 
0, nullptr);
-    auto status = pubsubProtocol_decodeMetadata((void*)data, len, &message);
-
-    EXPECT_EQ(status, CELIX_ENOMEM);
-    EXPECT_EQ(nullptr, message.metadata.metadata);
-
-    free(data);
-}
-
 TEST_F(WireProtocolCommonTest, 
WireProtocolCommonTest_DencodeMetadataWithDuplicateEntries) {
     pubsub_protocol_message_t message;
     message.header.convertEndianess = 1;
diff --git a/misc/error_injector/CMakeLists.txt 
b/misc/error_injector/CMakeLists.txt
index c8a63dc9..77d545e8 100644
--- a/misc/error_injector/CMakeLists.txt
+++ b/misc/error_injector/CMakeLists.txt
@@ -20,10 +20,6 @@ target_include_directories(error_injector INTERFACE 
${CMAKE_CURRENT_LIST_DIR})
 # get caller address of the target function, into which errors are injected
 target_link_libraries(error_injector INTERFACE dl)
 target_link_options(error_injector INTERFACE -rdynamic)
-if(NOT APPLE)
-    target_compile_options(error_injector INTERFACE -Wno-frame-address)
-else()
-    target_compile_options(error_injector INTERFACE -Wno-error=frame-address)
-endif()
+target_compile_options(error_injector INTERFACE -Wno-frame-address)
 add_subdirectory(malloc)
 add_subdirectory(celix_properties)

Reply via email to