Skip to content

Commit

Permalink
Regression test for Fast DDS-Gen Use different typename for collectio…
Browse files Browse the repository at this point in the history
…ns of TK_UINT8 and TK_BYTE (#5251)

* Refs #20878. Update dds-types-test and regenerate

Signed-off-by: Ricardo González Moreno <[email protected]>

* Refs #20878. Regression test

Signed-off-by: Ricardo González Moreno <[email protected]>

* Refs #20878. Update with fix

Signed-off-by: Ricardo González Moreno <[email protected]>

* Refs #20878. Apply suggestions

Signed-off-by: Ricardo González Moreno <[email protected]>

---------

Signed-off-by: Ricardo González Moreno <[email protected]>
  • Loading branch information
richiware authored Sep 24, 2024
1 parent 37cd84d commit ce8e4eb
Show file tree
Hide file tree
Showing 33 changed files with 2,040 additions and 647 deletions.
24 changes: 12 additions & 12 deletions examples/cpp/configuration/ConfigurationTypeObjectSupport.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ void register_Configuration_type_identifier(
ReturnCode_t return_code_data {eprosima::fastdds::dds::RETCODE_OK};
return_code_data =
eprosima::fastdds::dds::DomainParticipantFactory::get_instance()->type_object_registry().get_type_identifiers(
"anonymous_sequence_uint8_t_unbounded", type_ids_data);
"anonymous_sequence_byte_unbounded", type_ids_data);

if (eprosima::fastdds::dds::RETCODE_OK != return_code_data)
{
Expand All @@ -178,29 +178,29 @@ void register_Configuration_type_identifier(
"Sequence element TypeIdentifier unknown to TypeObjectRegistry.");
return;
}
bool element_identifier_anonymous_sequence_uint8_t_unbounded_ec {false};
TypeIdentifier* element_identifier_anonymous_sequence_uint8_t_unbounded {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_data, element_identifier_anonymous_sequence_uint8_t_unbounded_ec))};
if (!element_identifier_anonymous_sequence_uint8_t_unbounded_ec)
bool element_identifier_anonymous_sequence_byte_unbounded_ec {false};
TypeIdentifier* element_identifier_anonymous_sequence_byte_unbounded {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_data, element_identifier_anonymous_sequence_byte_unbounded_ec))};
if (!element_identifier_anonymous_sequence_byte_unbounded_ec)
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION, "Sequence element TypeIdentifier inconsistent.");
return;
}
EquivalenceKind equiv_kind_anonymous_sequence_uint8_t_unbounded = EK_COMPLETE;
EquivalenceKind equiv_kind_anonymous_sequence_byte_unbounded = EK_COMPLETE;
if (TK_NONE == type_ids_data.type_identifier2()._d())
{
equiv_kind_anonymous_sequence_uint8_t_unbounded = EK_BOTH;
equiv_kind_anonymous_sequence_byte_unbounded = EK_BOTH;
}
CollectionElementFlag element_flags_anonymous_sequence_uint8_t_unbounded = 0;
PlainCollectionHeader header_anonymous_sequence_uint8_t_unbounded = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_sequence_uint8_t_unbounded, element_flags_anonymous_sequence_uint8_t_unbounded);
CollectionElementFlag element_flags_anonymous_sequence_byte_unbounded = 0;
PlainCollectionHeader header_anonymous_sequence_byte_unbounded = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_sequence_byte_unbounded, element_flags_anonymous_sequence_byte_unbounded);
{
SBound bound = 0;
PlainSequenceSElemDefn seq_sdefn = TypeObjectUtils::build_plain_sequence_s_elem_defn(header_anonymous_sequence_uint8_t_unbounded, bound,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_sequence_uint8_t_unbounded));
PlainSequenceSElemDefn seq_sdefn = TypeObjectUtils::build_plain_sequence_s_elem_defn(header_anonymous_sequence_byte_unbounded, bound,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_sequence_byte_unbounded));
if (eprosima::fastdds::dds::RETCODE_BAD_PARAMETER ==
TypeObjectUtils::build_and_register_s_sequence_type_identifier(seq_sdefn, "anonymous_sequence_uint8_t_unbounded", type_ids_data))
TypeObjectUtils::build_and_register_s_sequence_type_identifier(seq_sdefn, "anonymous_sequence_byte_unbounded", type_ids_data))
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION,
"anonymous_sequence_uint8_t_unbounded already registered in TypeObjectRegistry for a different type.");
"anonymous_sequence_byte_unbounded already registered in TypeObjectRegistry for a different type.");
}
}
}
Expand Down
72 changes: 36 additions & 36 deletions src/cpp/statistics/types/monitorservice_typesTypeObjectSupport.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -734,7 +734,7 @@ void register_LivelinessChangedStatus_s_type_identifier(
ReturnCode_t return_code_last_publication_handle {eprosima::fastdds::dds::RETCODE_OK};
return_code_last_publication_handle =
eprosima::fastdds::dds::DomainParticipantFactory::get_instance()->type_object_registry().get_type_identifiers(
"anonymous_array_uint8_t_16", type_ids_last_publication_handle);
"anonymous_array_byte_16", type_ids_last_publication_handle);

if (eprosima::fastdds::dds::RETCODE_OK != return_code_last_publication_handle)
{
Expand All @@ -748,31 +748,31 @@ void register_LivelinessChangedStatus_s_type_identifier(
"Array element TypeIdentifier unknown to TypeObjectRegistry.");
return;
}
bool element_identifier_anonymous_array_uint8_t_16_ec {false};
TypeIdentifier* element_identifier_anonymous_array_uint8_t_16 {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_last_publication_handle, element_identifier_anonymous_array_uint8_t_16_ec))};
if (!element_identifier_anonymous_array_uint8_t_16_ec)
bool element_identifier_anonymous_array_byte_16_ec {false};
TypeIdentifier* element_identifier_anonymous_array_byte_16 {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_last_publication_handle, element_identifier_anonymous_array_byte_16_ec))};
if (!element_identifier_anonymous_array_byte_16_ec)
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION, "Array element TypeIdentifier inconsistent.");
return;
}
EquivalenceKind equiv_kind_anonymous_array_uint8_t_16 = EK_COMPLETE;
EquivalenceKind equiv_kind_anonymous_array_byte_16 = EK_COMPLETE;
if (TK_NONE == type_ids_last_publication_handle.type_identifier2()._d())
{
equiv_kind_anonymous_array_uint8_t_16 = EK_BOTH;
equiv_kind_anonymous_array_byte_16 = EK_BOTH;
}
CollectionElementFlag element_flags_anonymous_array_uint8_t_16 = 0;
PlainCollectionHeader header_anonymous_array_uint8_t_16 = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_array_uint8_t_16, element_flags_anonymous_array_uint8_t_16);
CollectionElementFlag element_flags_anonymous_array_byte_16 = 0;
PlainCollectionHeader header_anonymous_array_byte_16 = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_array_byte_16, element_flags_anonymous_array_byte_16);
{
SBoundSeq array_bound_seq;
TypeObjectUtils::add_array_dimension(array_bound_seq, static_cast<SBound>(16));

PlainArraySElemDefn array_sdefn = TypeObjectUtils::build_plain_array_s_elem_defn(header_anonymous_array_uint8_t_16, array_bound_seq,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_array_uint8_t_16));
PlainArraySElemDefn array_sdefn = TypeObjectUtils::build_plain_array_s_elem_defn(header_anonymous_array_byte_16, array_bound_seq,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_array_byte_16));
if (eprosima::fastdds::dds::RETCODE_BAD_PARAMETER ==
TypeObjectUtils::build_and_register_s_array_type_identifier(array_sdefn, "anonymous_array_uint8_t_16", type_ids_last_publication_handle))
TypeObjectUtils::build_and_register_s_array_type_identifier(array_sdefn, "anonymous_array_byte_16", type_ids_last_publication_handle))
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION,
"anonymous_array_uint8_t_16 already registered in TypeObjectRegistry for a different type.");
"anonymous_array_byte_16 already registered in TypeObjectRegistry for a different type.");
}
}
}
Expand Down Expand Up @@ -857,7 +857,7 @@ void register_DeadlineMissedStatus_s_type_identifier(
ReturnCode_t return_code_last_instance_handle {eprosima::fastdds::dds::RETCODE_OK};
return_code_last_instance_handle =
eprosima::fastdds::dds::DomainParticipantFactory::get_instance()->type_object_registry().get_type_identifiers(
"anonymous_array_uint8_t_16", type_ids_last_instance_handle);
"anonymous_array_byte_16", type_ids_last_instance_handle);

if (eprosima::fastdds::dds::RETCODE_OK != return_code_last_instance_handle)
{
Expand All @@ -871,31 +871,31 @@ void register_DeadlineMissedStatus_s_type_identifier(
"Array element TypeIdentifier unknown to TypeObjectRegistry.");
return;
}
bool element_identifier_anonymous_array_uint8_t_16_ec {false};
TypeIdentifier* element_identifier_anonymous_array_uint8_t_16 {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_last_instance_handle, element_identifier_anonymous_array_uint8_t_16_ec))};
if (!element_identifier_anonymous_array_uint8_t_16_ec)
bool element_identifier_anonymous_array_byte_16_ec {false};
TypeIdentifier* element_identifier_anonymous_array_byte_16 {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_last_instance_handle, element_identifier_anonymous_array_byte_16_ec))};
if (!element_identifier_anonymous_array_byte_16_ec)
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION, "Array element TypeIdentifier inconsistent.");
return;
}
EquivalenceKind equiv_kind_anonymous_array_uint8_t_16 = EK_COMPLETE;
EquivalenceKind equiv_kind_anonymous_array_byte_16 = EK_COMPLETE;
if (TK_NONE == type_ids_last_instance_handle.type_identifier2()._d())
{
equiv_kind_anonymous_array_uint8_t_16 = EK_BOTH;
equiv_kind_anonymous_array_byte_16 = EK_BOTH;
}
CollectionElementFlag element_flags_anonymous_array_uint8_t_16 = 0;
PlainCollectionHeader header_anonymous_array_uint8_t_16 = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_array_uint8_t_16, element_flags_anonymous_array_uint8_t_16);
CollectionElementFlag element_flags_anonymous_array_byte_16 = 0;
PlainCollectionHeader header_anonymous_array_byte_16 = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_array_byte_16, element_flags_anonymous_array_byte_16);
{
SBoundSeq array_bound_seq;
TypeObjectUtils::add_array_dimension(array_bound_seq, static_cast<SBound>(16));

PlainArraySElemDefn array_sdefn = TypeObjectUtils::build_plain_array_s_elem_defn(header_anonymous_array_uint8_t_16, array_bound_seq,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_array_uint8_t_16));
PlainArraySElemDefn array_sdefn = TypeObjectUtils::build_plain_array_s_elem_defn(header_anonymous_array_byte_16, array_bound_seq,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_array_byte_16));
if (eprosima::fastdds::dds::RETCODE_BAD_PARAMETER ==
TypeObjectUtils::build_and_register_s_array_type_identifier(array_sdefn, "anonymous_array_uint8_t_16", type_ids_last_instance_handle))
TypeObjectUtils::build_and_register_s_array_type_identifier(array_sdefn, "anonymous_array_byte_16", type_ids_last_instance_handle))
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION,
"anonymous_array_uint8_t_16 already registered in TypeObjectRegistry for a different type.");
"anonymous_array_byte_16 already registered in TypeObjectRegistry for a different type.");
}
}
}
Expand Down Expand Up @@ -1172,7 +1172,7 @@ void register_MonitorServiceData_type_identifier(
{
return_code_MonitorServiceData =
eprosima::fastdds::dds::DomainParticipantFactory::get_instance()->type_object_registry().get_type_identifiers(
"anonymous_sequence_uint8_t_unbounded", type_ids_MonitorServiceData);
"anonymous_sequence_byte_unbounded", type_ids_MonitorServiceData);

if (eprosima::fastdds::dds::RETCODE_OK != return_code_MonitorServiceData)
{
Expand All @@ -1186,29 +1186,29 @@ void register_MonitorServiceData_type_identifier(
"Sequence element TypeIdentifier unknown to TypeObjectRegistry.");
return;
}
bool element_identifier_anonymous_sequence_uint8_t_unbounded_ec {false};
TypeIdentifier* element_identifier_anonymous_sequence_uint8_t_unbounded {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_MonitorServiceData, element_identifier_anonymous_sequence_uint8_t_unbounded_ec))};
if (!element_identifier_anonymous_sequence_uint8_t_unbounded_ec)
bool element_identifier_anonymous_sequence_byte_unbounded_ec {false};
TypeIdentifier* element_identifier_anonymous_sequence_byte_unbounded {new TypeIdentifier(TypeObjectUtils::retrieve_complete_type_identifier(type_ids_MonitorServiceData, element_identifier_anonymous_sequence_byte_unbounded_ec))};
if (!element_identifier_anonymous_sequence_byte_unbounded_ec)
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION, "Sequence element TypeIdentifier inconsistent.");
return;
}
EquivalenceKind equiv_kind_anonymous_sequence_uint8_t_unbounded = EK_COMPLETE;
EquivalenceKind equiv_kind_anonymous_sequence_byte_unbounded = EK_COMPLETE;
if (TK_NONE == type_ids_MonitorServiceData.type_identifier2()._d())
{
equiv_kind_anonymous_sequence_uint8_t_unbounded = EK_BOTH;
equiv_kind_anonymous_sequence_byte_unbounded = EK_BOTH;
}
CollectionElementFlag element_flags_anonymous_sequence_uint8_t_unbounded = 0;
PlainCollectionHeader header_anonymous_sequence_uint8_t_unbounded = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_sequence_uint8_t_unbounded, element_flags_anonymous_sequence_uint8_t_unbounded);
CollectionElementFlag element_flags_anonymous_sequence_byte_unbounded = 0;
PlainCollectionHeader header_anonymous_sequence_byte_unbounded = TypeObjectUtils::build_plain_collection_header(equiv_kind_anonymous_sequence_byte_unbounded, element_flags_anonymous_sequence_byte_unbounded);
{
SBound bound = 0;
PlainSequenceSElemDefn seq_sdefn = TypeObjectUtils::build_plain_sequence_s_elem_defn(header_anonymous_sequence_uint8_t_unbounded, bound,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_sequence_uint8_t_unbounded));
PlainSequenceSElemDefn seq_sdefn = TypeObjectUtils::build_plain_sequence_s_elem_defn(header_anonymous_sequence_byte_unbounded, bound,
eprosima::fastcdr::external<TypeIdentifier>(element_identifier_anonymous_sequence_byte_unbounded));
if (eprosima::fastdds::dds::RETCODE_BAD_PARAMETER ==
TypeObjectUtils::build_and_register_s_sequence_type_identifier(seq_sdefn, "anonymous_sequence_uint8_t_unbounded", type_ids_MonitorServiceData))
TypeObjectUtils::build_and_register_s_sequence_type_identifier(seq_sdefn, "anonymous_sequence_byte_unbounded", type_ids_MonitorServiceData))
{
EPROSIMA_LOG_ERROR(XTYPES_TYPE_REPRESENTATION,
"anonymous_sequence_uint8_t_unbounded already registered in TypeObjectRegistry for a different type.");
"anonymous_sequence_byte_unbounded already registered in TypeObjectRegistry for a different type.");
}
}
}
Expand Down
Loading

0 comments on commit ce8e4eb

Please sign in to comment.