protected void Base_EmptyStructUdpMessageSerialization(ISerializer serializer)
        {
            var myStruct = new MyEmptyStruct();

            UdpMessage message = UdpMessage.Create(myStruct, serializer);

            ReadOnlyMemory <byte> data = serializer.Serialize(message);

            var nongenericMessage = serializer.Deserialize(data, typeof(UdpMessage));
            var genericMessage    = serializer.Deserialize <UdpMessage>(data);

            object nongenericDto = null;

            if (nongenericMessage is UdpMessage ngm)
            {
                nongenericDto = ngm.GetData(typeof(MyEmptyStruct), serializer);
            }
            else
            {
                Assert.True(false, $"{nameof(nongenericMessage)} was not of expected type {nameof(UdpMessage)}.");
            }

            var genericDto = genericMessage.GetData <MyEmptyStruct>(serializer);

            AssertExtensions.AreSame(myStruct, nongenericDto);
            AssertExtensions.AreSame(myStruct, genericDto);
        }