diff --git a/src/cpp/rtps/xmlparser/XMLParser.cpp b/src/cpp/rtps/xmlparser/XMLParser.cpp index 8f506e35acc..f9e1eae31d1 100644 --- a/src/cpp/rtps/xmlparser/XMLParser.cpp +++ b/src/cpp/rtps/xmlparser/XMLParser.cpp @@ -52,9 +52,6 @@ using namespace eprosima::fastdds::xml::detail; XMLP_ret XMLParser::loadDefaultXMLFile( up_base_node_t& root) { -<<<<<<< HEAD:src/cpp/rtps/xmlparser/XMLParser.cpp - return loadXML(DEFAULT_FASTRTPS_PROFILES, root); -======= // Use absolute path to ensure that the file is loaded only once #ifdef _WIN32 char current_directory[MAX_PATH]; @@ -64,7 +61,7 @@ XMLP_ret XMLParser::loadDefaultXMLFile( } else { - strcat_s(current_directory, MAX_PATH, DEFAULT_FASTDDS_PROFILES); + strcat_s(current_directory, MAX_PATH, DEFAULT_FASTRTPS_PROFILES); return loadXML(current_directory, root, true); } #else @@ -76,12 +73,11 @@ XMLP_ret XMLParser::loadDefaultXMLFile( else { strcat(current_directory, "/"); - strcat(current_directory, DEFAULT_FASTDDS_PROFILES); + strcat(current_directory, DEFAULT_FASTRTPS_PROFILES); return loadXML(current_directory, root, true); } #endif // _WIN32 return XMLP_ret::XML_ERROR; ->>>>>>> 0919ff294 (Use absolute paths when loading XML files (#4751)):src/cpp/xmlparser/XMLParser.cpp } XMLP_ret XMLParser::parseXML( @@ -2107,11 +2103,7 @@ XMLP_ret XMLParser::loadXML( tinyxml2::XMLDocument xmlDoc; if (tinyxml2::XMLError::XML_SUCCESS != xmlDoc.LoadFile(filename.c_str())) { -<<<<<<< HEAD:src/cpp/rtps/xmlparser/XMLParser.cpp - if (filename != std::string(DEFAULT_FASTRTPS_PROFILES)) -======= if (!is_default) ->>>>>>> 0919ff294 (Use absolute paths when loading XML files (#4751)):src/cpp/xmlparser/XMLParser.cpp { EPROSIMA_LOG_ERROR(XMLPARSER, "Error opening '" << filename << "'"); } diff --git a/src/cpp/rtps/xmlparser/XMLProfileManager.cpp b/src/cpp/rtps/xmlparser/XMLProfileManager.cpp index d487cf71e76..c13e70eb711 100644 --- a/src/cpp/rtps/xmlparser/XMLProfileManager.cpp +++ b/src/cpp/rtps/xmlparser/XMLProfileManager.cpp @@ -222,9 +222,6 @@ void XMLProfileManager::loadDefaultXMLFile() // Try to load the default XML file if variable does not exist or is not set to '1' if (!(getenv_s(&size, skip_xml, size, SKIP_DEFAULT_XML_FILE) == 0 && skip_xml[0] == '1')) { -<<<<<<< HEAD:src/cpp/rtps/xmlparser/XMLProfileManager.cpp - loadXMLFile(DEFAULT_FASTRTPS_PROFILES); -======= // Try to load the default XML file. if (GetCurrentDirectory(MAX_PATH, current_directory) == 0) { @@ -233,10 +230,9 @@ void XMLProfileManager::loadDefaultXMLFile() else { strcat_s(current_directory, MAX_PATH, "\\"); - strcat_s(current_directory, MAX_PATH, DEFAULT_FASTDDS_PROFILES); + strcat_s(current_directory, MAX_PATH, DEFAULT_FASTRTPS_PROFILES); loadXMLFile(current_directory, true); } ->>>>>>> 0919ff294 (Use absolute paths when loading XML files (#4751)):src/cpp/xmlparser/XMLProfileManager.cpp } #else char absolute_path[PATH_MAX]; @@ -259,9 +255,6 @@ void XMLProfileManager::loadDefaultXMLFile() // Try to load the default XML file if variable does not exist or is not set to '1' if (!(skip_xml != nullptr && skip_xml[0] == '1')) { -<<<<<<< HEAD:src/cpp/rtps/xmlparser/XMLProfileManager.cpp - loadXMLFile(DEFAULT_FASTRTPS_PROFILES); -======= if (getcwd(absolute_path, PATH_MAX) == NULL) { EPROSIMA_LOG_ERROR(XMLPARSER, "getcwd failed " << std::strerror(errno)); @@ -269,10 +262,9 @@ void XMLProfileManager::loadDefaultXMLFile() else { strcat(absolute_path, "/"); - strcat(absolute_path, DEFAULT_FASTDDS_PROFILES); + strcat(absolute_path, DEFAULT_FASTRTPS_PROFILES); loadXMLFile(absolute_path, true); } ->>>>>>> 0919ff294 (Use absolute paths when loading XML files (#4751)):src/cpp/xmlparser/XMLProfileManager.cpp } #endif // ifdef _WIN32 @@ -383,11 +375,7 @@ XMLP_ret XMLProfileManager::loadXMLFile( XMLP_ret loaded_ret = XMLParser::loadXML(filename, root_node, is_default); if (!root_node || loaded_ret != XMLP_ret::XML_OK) { -<<<<<<< HEAD:src/cpp/rtps/xmlparser/XMLProfileManager.cpp - if (filename != std::string(DEFAULT_FASTRTPS_PROFILES)) -======= if (!is_default) ->>>>>>> 0919ff294 (Use absolute paths when loading XML files (#4751)):src/cpp/xmlparser/XMLProfileManager.cpp { EPROSIMA_LOG_ERROR(XMLPARSER, "Error parsing '" << filename << "'"); } diff --git a/test/unittest/xmlparser/CMakeLists.txt b/test/unittest/xmlparser/CMakeLists.txt index 6019fe57d15..8d787824ae1 100644 --- a/test/unittest/xmlparser/CMakeLists.txt +++ b/test/unittest/xmlparser/CMakeLists.txt @@ -433,10 +433,36 @@ gtest_discover_tests(XMLEndpointParserTests) ###################################### XMLLoadFileTests ###################################################### set(XMLLOADFILE_SOURCE XMLLoadFileTests.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/AnnotationDescriptor.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/AnnotationParameterValue.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/BuiltinAnnotationsTypeObject.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicData.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicDataFactory.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicDataPtr.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicPubSubType.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicType.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicTypeBuilder.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicTypeBuilderFactory.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicTypeBuilderPtr.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicTypeMember.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/DynamicTypePtr.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/MemberDescriptor.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeDescriptor.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeIdentifier.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeIdentifierTypes.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeNamesGenerator.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeObject.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeObjectFactory.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypeObjectHashId.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/dynamic-types/TypesBase.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/log/FileConsumer.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/log/Log.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/log/OStreamConsumer.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/log/StdoutConsumer.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/log/StdoutErrConsumer.cpp ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/publisher/qos/WriterQos.cpp ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/subscriber/qos/ReaderQos.cpp ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/topic/TopicDataType.cpp - ${PROJECT_SOURCE_DIR}/src/cpp/fastdds/xtypes/exception/Exception.cpp ${PROJECT_SOURCE_DIR}/src/cpp/rtps/attributes/ThreadSettings.cpp ${PROJECT_SOURCE_DIR}/src/cpp/rtps/common/LocatorWithMask.cpp ${PROJECT_SOURCE_DIR}/src/cpp/rtps/common/Time_t.cpp @@ -448,14 +474,17 @@ set(XMLLOADFILE_SOURCE ${PROJECT_SOURCE_DIR}/src/cpp/rtps/transport/network/NetworkInterface.cpp ${PROJECT_SOURCE_DIR}/src/cpp/rtps/transport/network/NetworkInterfaceWithFilter.cpp ${PROJECT_SOURCE_DIR}/src/cpp/rtps/transport/PortBasedTransportDescriptor.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/rtps/xmlparser/XMLDynamicParser.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/rtps/xmlparser/XMLElementParser.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/rtps/xmlparser/XMLParser.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/rtps/xmlparser/XMLParserCommon.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/rtps/xmlparser/XMLProfileManager.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/utils/IPFinder.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/utils/IPLocator.cpp ${PROJECT_SOURCE_DIR}/src/cpp/utils/md5.cpp ${PROJECT_SOURCE_DIR}/src/cpp/utils/string_convert.cpp + ${PROJECT_SOURCE_DIR}/src/cpp/utils/SystemInfo.cpp ${PROJECT_SOURCE_DIR}/src/cpp/utils/UnitsParser.cpp - ${PROJECT_SOURCE_DIR}/src/cpp/xmlparser/XMLDynamicParser.cpp - ${PROJECT_SOURCE_DIR}/src/cpp/xmlparser/XMLElementParser.cpp - ${PROJECT_SOURCE_DIR}/src/cpp/xmlparser/XMLParser.cpp - ${PROJECT_SOURCE_DIR}/src/cpp/xmlparser/XMLParserCommon.cpp - ${PROJECT_SOURCE_DIR}/src/cpp/xmlparser/XMLProfileManager.cpp # locators ${PROJECT_SOURCE_DIR}/src/cpp/utils/IPFinder.cpp @@ -512,8 +541,6 @@ target_link_libraries(XMLLoadFileTests GTest::gtest $<$:ws2_32> ${TINYXML2_LIBRARY} fastcdr - fastdds::log - fastdds::xtypes::dynamic-types::impl ) if(QNX) target_link_libraries(XMLLoadFileTests socket) diff --git a/test/unittest/xmlparser/XMLLoadFileTests.cpp b/test/unittest/xmlparser/XMLLoadFileTests.cpp index 557170d7710..dbb78607681 100644 --- a/test/unittest/xmlparser/XMLLoadFileTests.cpp +++ b/test/unittest/xmlparser/XMLLoadFileTests.cpp @@ -23,11 +23,10 @@ #include #include +#include +#include #include "../logging/mock/MockConsumer.h" -#include -#include - using namespace eprosima::fastdds::dds; using namespace eprosima::fastrtps; using namespace ::testing; @@ -67,13 +66,13 @@ class XMLLoadFileTests : public ::testing::Test }; /* - * This test checks that the default XML file is loaded only once when there is a DEFAULT_FASTDDS_PROFILES.xml file + * This test checks that the default XML file is loaded only once when there is a DEFAULT_FASTRTPS_PROFILES.xml file * in the current directory and the environment variable FASTRTPS_DEFAULT_PROFILES_FILE is set pointing to the same * file. * 1. Initialize Mock Consumer to consume the LogInfo entry that the library generates when the file has been already * parsed. Set filters to consume only the desired entry. - * 2. Get current path to set the environment variable to the DEFAULT_FASTDDS_PROFILES.xml file. - * 3. Write the DEFAULT_FASTDDS_PROFILES.xml file in the current directory. + * 2. Get current path to set the environment variable to the DEFAULT_FASTRTPS_PROFILES.xml file. + * 3. Write the DEFAULT_FASTRTPS_PROFILES.xml file in the current directory. * 4. Load the default XML file. * 5. Wait for the log entry to be consumed. */ @@ -92,21 +91,21 @@ TEST_F(XMLLoadFileTests, load_twice_default_xml) uint32_t ret = GetCurrentDirectory(MAX_PATH, current_directory); ASSERT_NE(ret, 0u); strcat_s(current_directory, MAX_PATH, "\\"); - strcat_s(current_directory, MAX_PATH, xmlparser::DEFAULT_FASTDDS_PROFILES); + strcat_s(current_directory, MAX_PATH, xmlparser::DEFAULT_FASTRTPS_PROFILES); // Set environment variable _putenv_s("FASTDDS_DEFAULT_PROFILES_FILE", current_directory); #else char current_directory[PATH_MAX]; ASSERT_NE(getcwd(current_directory, PATH_MAX), (void*)NULL); strcat(current_directory, "/"); - strcat(current_directory, xmlparser::DEFAULT_FASTDDS_PROFILES); + strcat(current_directory, xmlparser::DEFAULT_FASTRTPS_PROFILES); // Set environment variable setenv("FASTDDS_DEFAULT_PROFILES_FILE", current_directory, 1); #endif // _WIN32 - // Write DEFAULT_FASTDDS_PROFILES.xml + // Write DEFAULT_FASTRTPS_PROFILES.xml std::ofstream xmlFile; - xmlFile.open("DEFAULT_FASTDDS_PROFILES.xml"); + xmlFile.open("DEFAULT_FASTRTPS_PROFILES.xml"); xmlFile << ""; xmlFile << ""; xmlFile << "truetest_name"; @@ -124,7 +123,7 @@ TEST_F(XMLLoadFileTests, load_twice_default_xml) Log::Reset(); Log::KillThread(); - std::remove("DEFAULT_FASTDDS_PROFILES.xml"); + std::remove("DEFAULT_FASTRTPS_PROFILES.xml"); } int main(