tests: adapt GTest smoke-tests to MockDDS annotated payload format (seq:payload)

This commit is contained in:
torsten committed 2026-07-17 17:31:54 +02:00
1 parent bec34480c8
commit 90f7f8a474
3 files changed
+21 -4

No files matched your search

@@ -10,7 +10,15 @@ TEST(DataTopicSmokeGTest, Format) {
TEST(DataTopicSmokeGTest, MockDDSTopicFlow) { TEST(DataTopicSmokeGTest, MockDDSTopicFlow) {
MockDDS::clear_all(); MockDDS::clear_all();
MockDDS::publish("data/topic", "hello"); MockDDS::publish("data/topic", "hello");
EXPECT_EQ(MockDDS::take_last("data/topic"), "hello"); auto r1 = MockDDS::take_last("data/topic");
auto p1 = r1.substr(r1.find(':') + 1);
EXPECT_EQ(p1, "hello");
MockDDS::publish("data/topic", "world"); MockDDS::publish("data/topic", "world");
EXPECT_EQ(MockDDS::take_last("data/topic"), "world"); auto r2 = MockDDS::take_last("data/topic");
auto p2 = r2.substr(r2.find(':') + 1);
EXPECT_EQ(p2, "world");
// check sequence increment
auto s1 = std::stoul(r1.substr(0, r1.find(':')));
auto s2 = std::stoul(r2.substr(0, r2.find(':')));
EXPECT_LT(s1, s2);
} }
@@ -13,5 +13,8 @@ TEST(FunctionTopicSmokeGTest, MockDDSTopicAsSignal) {
MockDDS::clear_all(); MockDDS::clear_all();
MockDDS::publish("func/topic", "evt:1"); MockDDS::publish("func/topic", "evt:1");
auto val = MockDDS::take_last("func/topic"); auto val = MockDDS::take_last("func/topic");
EXPECT_EQ(val, "evt:1"); auto payload = val.substr(val.find(':') + 1);
EXPECT_EQ(payload, "evt:1");
auto seq = std::stoul(val.substr(0, val.find(':')));
EXPECT_EQ(seq, 1UL);
} }
@@ -11,5 +11,11 @@ TEST(GenericSmokeGTest, MockDDSPublishReceive) {
MockDDS::clear_all(); MockDDS::clear_all();
MockDDS::publish("topic1", "payload42"); MockDDS::publish("topic1", "payload42");
auto r = MockDDS::take_last("topic1"); auto r = MockDDS::take_last("topic1");
EXPECT_EQ(r, "payload42"); // format is "<seq>:<payload>"
auto pos = r.find(':');
ASSERT_NE(pos, std::string::npos);
auto seq = std::stoul(r.substr(0, pos));
auto payload = r.substr(pos + 1);
EXPECT_EQ(payload, "payload42");
EXPECT_EQ(seq, 1UL);
} }