public void ReadWriteProtobufSerMsgs()
        {
            var dpm = new DummyProtoMessage()
            {
                I = 1, D = 2.2, S = "TestProto"
            };
            var ms = new MemoryStream();

            _sh.ProtobufSerialize(ms, dpm);
            ms.Seek(0, SeekOrigin.Begin);
            var dpmds = (DummyProtoMessage)_sh.ProtobufDeserialize(ms);

            Assert.AreEqual(dpm.I, dpmds.I);
            Assert.AreEqual(dpm.D, dpmds.D);
            Assert.AreEqual(dpm.S, dpmds.S);
        }
        public void DetermineApproprateSerialization()
        {
            var a = new Bye();
            var b = new Ping();
            var c = new Pong();
            var d = new DummyMessage();
            var e = new DummyProtoMessage();

            var at = _sh.DetermineApproprateSerialization(a);
            var bt = _sh.DetermineApproprateSerialization(b);
            var ct = _sh.DetermineApproprateSerialization(c);
            var dt = _sh.DetermineApproprateSerialization(d);
            var et = _sh.DetermineApproprateSerialization(e);

            Assert.AreEqual(SerializationType.Manual, at);
            Assert.AreEqual(SerializationType.Manual, bt);
            Assert.AreEqual(SerializationType.Manual, ct);
            Assert.AreEqual(SerializationType.Binary, dt);
            Assert.AreEqual(SerializationType.Protobuf, et);
        }