MCPcopy Create free account
hub / github.com/OpenDDS/OpenDDS / TEST

Function TEST

tests/unit-tests/dds/DCPS/XTypes/TypeObject.cpp:124–171  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

122}
123
124TEST(dds_DCPS_XTypes_TypeObject, maintest)
125{
126 Sequence<ACE_CDR::ULong> sequ;
127 const unsigned char length_only[] = {0, 0, 0, 0};
128 check_encode(sequ, xcdr2_be, length_only);
129 check_encode(sequ, xcdr2_le, length_only);
130
131 Sequence<Struct> seqs;
132 const unsigned char dheader_length_be[] = {
133 0, 0, 0, 4,
134 0, 0, 0, 0,
135 };
136 const unsigned char dheader_length_le[] = {
137 4, 0, 0, 0,
138 0, 0, 0, 0,
139 };
140 check_encode(seqs, xcdr2_be, dheader_length_be);
141 check_encode(seqs, xcdr2_le, dheader_length_le);
142
143 const char appended_be[] = {
144 0, 0, 0, 16, // DHeader (seq)
145 0, 0, 0, 1, // Length
146 0, 0, 0, 8, // DHeader (structure)
147 0, 0, 0, 2, // member
148 1, 2, 3, 4, // extra appended data
149 };
150 check_decode(seqs, xcdr2_be, appended_be);
151 EXPECT_EQ(seqs.length(), 1U);
152 EXPECT_EQ(seqs[0].member, 2U);
153
154 const char invalid_encoding[] = {0, 0, 0, 0};
155 check_decode(seqs, xcdr2_be, invalid_encoding);
156 EXPECT_EQ(seqs.length(), 0U);
157
158 const TypeObject testObject = getTypeObject();
159 const TypeIdentifier goodIdentifier = makeTypeIdentifier(testObject);
160 //std::cout << goodIdentifier << std::endl;
161 using namespace OpenDDS;
162 const XTypes::TypeIdentifier good(XTypes::EK_MINIMAL, XTypes::EquivalenceHashWrapper(47, 43, 14, 5, 138, 206, 143, 33, 189, 131, 116, 89, 176, 60));
163 EXPECT_EQ(goodIdentifier, good);
164
165 Encoding encoding(Encoding::KIND_XCDR2, ENDIAN_LITTLE);
166 encoding.skip_sequence_dheader(true);
167 const TypeIdentifier badIdentifier = makeTypeIdentifier(testObject, &encoding);
168 //std::cout << badIdentifier << std::endl;
169 const XTypes::TypeIdentifier bad(XTypes::EK_MINIMAL,XTypes::EquivalenceHashWrapper(100, 92, 123, 199, 182, 88, 54, 251, 172, 100, 66, 123, 137, 217));
170 EXPECT_EQ(badIdentifier, bad);
171}
172
173TEST(dds_DCPS_XTypes_TypeObject, Sequence_equal)
174{

Callers

nothing calls this directly

Calls 13

check_encodeFunction · 0.85
check_decodeFunction · 0.85
getTypeObjectFunction · 0.85
makeTypeIdentifierFunction · 0.85
TypeIdentifierClass · 0.85
make_scc_id_or_defaultFunction · 0.85
compute_dependenciesFunction · 0.85
lengthMethod · 0.45
appendMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected