Skip to content

Commit

Permalink
Fix conflicts
Browse files Browse the repository at this point in the history
Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
  • Loading branch information
Mario-DL committed May 27, 2024
1 parent 7a7703b commit 3b7d5df
Show file tree
Hide file tree
Showing 4 changed files with 49 additions and 43 deletions.
12 changes: 2 additions & 10 deletions src/cpp/rtps/xmlparser/XMLParser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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];
Expand All @@ -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
Expand All @@ -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(
Expand Down Expand Up @@ -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 << "'");
}
Expand Down
16 changes: 2 additions & 14 deletions src/cpp/rtps/xmlparser/XMLProfileManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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)
{
Expand All @@ -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];
Expand All @@ -259,20 +255,16 @@ 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));
}
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
Expand Down Expand Up @@ -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 << "'");
}
Expand Down
43 changes: 35 additions & 8 deletions test/unittest/xmlparser/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -512,8 +541,6 @@ target_link_libraries(XMLLoadFileTests GTest::gtest
$<$<BOOL:${WIN32}>:ws2_32>
${TINYXML2_LIBRARY}
fastcdr
fastdds::log
fastdds::xtypes::dynamic-types::impl
)
if(QNX)
target_link_libraries(XMLLoadFileTests socket)
Expand Down
21 changes: 10 additions & 11 deletions test/unittest/xmlparser/XMLLoadFileTests.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,10 @@

#include <gtest/gtest.h>
#include <fastdds/dds/log/Log.hpp>
#include <fastrtps/xmlparser/XMLProfileManager.h>
#include <fastrtps/xmlparser/XMLParserCommon.h>
#include "../logging/mock/MockConsumer.h"

#include <xmlparser/XMLProfileManager.h>
#include <xmlparser/XMLParserCommon.h>

using namespace eprosima::fastdds::dds;
using namespace eprosima::fastrtps;
using namespace ::testing;
Expand Down Expand Up @@ -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.
*/
Expand All @@ -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 << "<dds xmlns=\"http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles\">";
xmlFile << "<profiles><participant profile_name=\"test_participant_profile\" is_default_profile=\"true\">";
xmlFile << "<rtps><useBuiltinTransports>true</useBuiltinTransports><name>test_name</name></rtps></participant>";
Expand All @@ -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(
Expand Down

0 comments on commit 3b7d5df

Please sign in to comment.