File tree Expand file tree Collapse file tree 1 file changed +29
-1
lines changed
Expand file tree Collapse file tree 1 file changed +29
-1
lines changed Original file line number Diff line number Diff line change 1919#include " gtest/gtest.h"
2020#include " code_generation_test/MessageHeader.h"
2121#include " code_generation_test/Car.h"
22+ #include " code_generation_test/GlobalKeywords.h"
2223
2324using namespace code ::generation::test;
2425
@@ -1144,4 +1145,31 @@ TEST_F(CodeGenTest, shouldBeAbleToResolveStringLiterals)
11441145 car.sbeRewind ();
11451146 EXPECT_EQ (car.getVehicleCodeAsStringView (), " ABCDE" );
11461147}
1147- #endif
1148+ #endif
1149+
1150+ TEST_F (CodeGenTest, shouldComputeEncodedLengthCorrectlyForVarDataFields)
1151+ {
1152+ char buffer[BUFFER_LEN] = {};
1153+
1154+ std::uint64_t baseOffset = MessageHeader::encodedLength ();
1155+ GlobalKeywords keywords;
1156+ keywords.wrapForEncode (buffer, baseOffset, sizeof (buffer));
1157+ keywords.type (7 );
1158+ keywords.assertX (16 );
1159+
1160+ GlobalKeywords::Data &data = keywords.dataCount (1 );
1161+
1162+ data.next ()
1163+ .thisX (3 );
1164+
1165+ GlobalKeywords::Data::Super &super = data.superCount (2 );
1166+
1167+ super.next ()
1168+ .mph (100 );
1169+
1170+ super.next ()
1171+ .mph (200 )
1172+ .putImport (std::string (" this super long string value right here" ));
1173+
1174+ EXPECT_EQ (337 , keywords.encodedLength ());
1175+ }
You can’t perform that action at this time.
0 commit comments