| 62 | }; |
| 63 | |
| 64 | TEST(MessageTest, Simple) { |
| 65 | TestMessage message("x{a:1 b:2} y{} z{c:3} d:4"); |
| 66 | ASSERT_TRUE(message.finished()); |
| 67 | |
| 68 | ASSERT_EQ(message.NumFields(), 1); |
| 69 | EXPECT_EQ(message.GetField("d"), "4"); |
| 70 | |
| 71 | ASSERT_EQ(message.NumChildren(), 3); |
| 72 | |
| 73 | auto* x = message.GetChild(0); |
| 74 | EXPECT_EQ(x->name(), "x"); |
| 75 | ASSERT_EQ(x->NumFields(), 2); |
| 76 | EXPECT_EQ(x->GetField("a"), "1"); |
| 77 | EXPECT_EQ(x->GetField("b"), "2"); |
| 78 | |
| 79 | auto* y = message.GetChild(1); |
| 80 | EXPECT_EQ(y->name(), "y"); |
| 81 | ASSERT_EQ(y->NumFields(), 0); |
| 82 | |
| 83 | auto* z = message.GetChild(2); |
| 84 | EXPECT_EQ(z->name(), "z"); |
| 85 | ASSERT_EQ(z->NumFields(), 1); |
| 86 | EXPECT_EQ(z->GetField("c"), "3"); |
| 87 | } |
| 88 | |
| 89 | TEST(MessageTest, Unnamed) { |
| 90 | TestMessage message("x{c:3} {} y{d:4}"); |
nothing calls this directly
no test coverage detected