Exemple #1
0
        public void Test_Can_Link_PatchingUpOneDir()
        {
            //arrange
            SerializerService serializer = new SerializerService();

            serializer.Link <PatchingInformationPayload, PSOBBPatchPacketPayloadServer>();
            serializer.Compile();
        }
        public static void Test_Can_Register_AuthProofResponse()
        {
            //arrange
            SerializerService serializer = new SerializerService();

            serializer.RegisterType <AuthPacketBaseTest>();
            serializer.Link <AuthLogonProofResponse, AuthPacketBaseTest>();

            serializer.Compile();
        }
        public static void Test_Can_Link_Child_Type()
        {
            //arrange
            SerializerService serivce = new SerializerService();

            Assert.DoesNotThrow(() => serivce.RegisterType <ChildType>());

            //act
            bool result = serivce.Link <ChildType, TestBaseType>();

            //assert
            Assert.True(result);
        }
Exemple #4
0
        public static void Test_Can_Serialize_Then_Deserialize_With_Correct_Values()
        {
            //arrange
            SerializerService serializer = new SerializerService();

            Assert.DoesNotThrow(() => serializer.RegisterType <SecondLevelClass>());
            serializer.Link <SecondLevelClass, ChildClass1>();
            serializer.Link <ChildClass1, TestBaseClass>();
            serializer.Compile();

            //act
            byte[] bytes = serializer.Serialize(new ChildClass1()
            {
                i = 1, b = 2, c = 3
            });
            ChildClass1 child = serializer.Deserialize <TestBaseClass>(bytes) as ChildClass1;

            //assert
            Assert.NotNull(child);

            Assert.AreEqual(3, child.c);
            Assert.AreEqual(2, child.b);
            Assert.AreEqual(1, child.i);
        }
        public static async Task Test_Can_Deserialize_AuthLogonProofResponse()
        {
            //arrange
            SerializerService serializer = new SerializerService();

            serializer.RegisterType <AuthPacketBaseTest>();
            serializer.RegisterType <AuthLogonProofResponse>();
            serializer.Link <AuthLogonProofResponse, AuthPacketBaseTest>();

            serializer.Compile();
            //act
            AuthPacketBaseTest test = await serializer.DeserializeAsync <AuthPacketBaseTest>(new DefaultStreamReaderStrategyAsync(realWorldBytes.Skip(1).ToArray())
                                                                                             .PeekWithBufferingAsync()
                                                                                             .PreprendWithBytesAsync(new byte[] { 0x01 })
                                                                                             .PreprendWithBytesAsync(new byte[] { 2 }));
        }
        public static void Test_Can_Serialize_Then_Deserialize_With_Linked_Type()
        {
            //arrange
            SerializerService serivce = new SerializerService();

            Assert.DoesNotThrow(() => serivce.RegisterType <ChildType>());
            serivce.Link <ChildType, TestBaseType>();
            serivce.Compile();

            //act
            ChildType child = serivce.Deserialize <TestBaseType>(serivce.Serialize(new ChildType())) as ChildType;

            Console.WriteLine(child.i + 5);

            //assert
            Assert.NotNull(child);
            Assert.True(child.GetType() == typeof(ChildType));
        }