@Test
    public void testToString() {
        SimpleExampleMessageData message = new SimpleExampleMessageData();
        message.setMyUint16(65535);
        message.setTaggedUuid(Uuid.fromString("x7D3Ck_ZRA22-dzIvu_pnQ"));
        message.setMyFloat64(1.0);
        assertEquals("SimpleExampleMessageData(processId=AAAAAAAAAAAAAAAAAAAAAA, " +
                "myTaggedIntArray=[], " +
                "myNullableString=null, " +
                "myInt16=123, myFloat64=1.0, " +
                "myString='', " +
                "myBytes=[], " +
                "taggedUuid=x7D3Ck_ZRA22-dzIvu_pnQ, " +
                "taggedLong=914172222550880202, " +
                "zeroCopyByteBuffer=java.nio.HeapByteBuffer[pos=0 lim=0 cap=0], " +
                "nullableZeroCopyByteBuffer=java.nio.HeapByteBuffer[pos=0 lim=0 cap=0], " +
                "myStruct=MyStruct(structId=0, arrayInStruct=[]), " +
                "myTaggedStruct=TaggedStruct(structId=''), " +
                "taggedLongFlexibleVersionSubset=0, " +
                "myCommonStruct=TestCommonStruct(foo=123, bar=123), " +
                "myOtherCommonStruct=TestCommonStruct(foo=123, bar=123), " +
                "myUint16=65535, " +
                "myUint32=1234567)", message.toString());
    }
Check following cases:
1. Tagged struct can be serialized/deserialized for version it is supported
2. Tagged struct doesn't matter for versions it is not declared.
clients/src/test/java/org/apache/kafka/common/message/SimpleExampleMessageTest.java