public void PackedSerialization()
        {
            IMessage abstractMessage = new AbstractMessageWrapper(TestUtil.GetPackedSet());

            TestUtil.AssertPackedFieldsSet(TestPackedTypes.ParseFrom(abstractMessage.ToByteString()));
            Assert.AreEqual(TestUtil.GetPackedSet().ToByteString(), abstractMessage.ToByteString());
        }
        public void PackedParsingOfUnpackedInput()
        {
            byte[]          bytes   = TestUnpackedTypes.ParseFrom(TestUtil.GetPackedSet().ToByteArray()).ToByteArray();
            TestPackedTypes message = TestPackedTypes.ParseFrom(bytes);

            TestUtil.AssertPackedFieldsSet(message);
        }
Esempio n. 3
0
        public void WriteWholePackedFieldsMessage()
        {
            TestPackedTypes message = TestUtil.GetPackedSet();

            byte[] rawBytes = message.ToByteArray();
            TestUtil.AssertEqualBytes(TestUtil.GetGoldenPackedFieldsMessage().ToByteArray(),
                                      rawBytes);
        }
Esempio n. 4
0
        public void SerializationPacked()
        {
            TestPackedTypes message  = TestUtil.GetPackedSet();
            ByteString      rawBytes = message.ToByteString();

            Assert.AreEqual(rawBytes.Length, message.SerializedSize);
            TestPackedTypes message2 = TestPackedTypes.ParseFrom(rawBytes);

            TestUtil.AssertPackedFieldsSet(message2);
        }
Esempio n. 5
0
        public void TestRoundTripPackedTypes()
        {
            TestPackedTypes msg     = AddPackedTypes(new TestPackedTypes.Builder(), 5).Build();
            object          content = SerializeMessage <TestPackedTypes, TestPackedTypes.Builder>(msg);

            TestPackedTypes copy = DeserializeMessage <TestPackedTypes, TestPackedTypes.Builder>(content, TestPackedTypes.CreateBuilder(), ExtensionRegistry.Empty).Build();

            Assert.AreEqual(msg, copy);
            AssertOutputEquals(content, SerializeMessage <TestPackedTypes, TestPackedTypes.Builder>(copy));
            Assert.AreEqual(Convert.ToBase64String(msg.ToByteArray()), Convert.ToBase64String(copy.ToByteArray()));
        }
Esempio n. 6
0
        public void testDynamicMessagePackedParsing()
        {
            TestPackedTypes.Builder builder = TestPackedTypes.CreateBuilder();
            TestUtil.SetPackedFields(builder);
            TestPackedTypes message = builder.Build();

            ByteString rawBytes = message.ToByteString();

            IMessage message2 = DynamicMessage.ParseFrom(TestPackedTypes.Descriptor, rawBytes);

            packedReflectionTester.AssertPackedFieldsSetViaReflection(message2);
        }
Esempio n. 7
0
        public void SerializePackedExtensions()
        {
            // TestPackedTypes and TestPackedExtensions should have compatible wire
            // formats; check that they serialize to the same string.
            TestPackedExtensions message  = TestUtil.GetPackedExtensionsSet();
            ByteString           rawBytes = message.ToByteString();

            TestPackedTypes message2  = TestUtil.GetPackedSet();
            ByteString      rawBytes2 = message2.ToByteString();

            Assert.AreEqual(rawBytes, rawBytes2);
        }
Esempio n. 8
0
        public void PackedTypesWrittenDirectlyToStream()
        {
            TestPackedTypes message = new TestPackedTypes.Builder {
                PackedInt32List = { 0, 1, 2 }
            }.Build();
            MemoryStream stream = new MemoryStream();

            message.WriteTo(stream);
            stream.Position = 0;
            TestPackedTypes readMessage = TestPackedTypes.ParseFrom(stream);

            Assert.AreEqual(message, readMessage);
        }
Esempio n. 9
0
        public void DynamicMessagePackedSerialization()
        {
            IBuilder builder = DynamicMessage.CreateBuilder(TestPackedTypes.Descriptor);

            packedReflectionTester.SetPackedFieldsViaReflection(builder);
            IMessage message = builder.WeakBuild();

            ByteString      rawBytes = message.ToByteString();
            TestPackedTypes message2 = TestPackedTypes.ParseFrom(rawBytes);

            TestUtil.AssertPackedFieldsSet(message2);

            // In fact, the serialized forms should be exactly the same, byte-for-byte.
            Assert.AreEqual(TestUtil.GetPackedSet().ToByteString(), rawBytes);
        }
Esempio n. 10
0
        public void SerializeDelimited()
        {
            MemoryStream stream = new MemoryStream();

            TestUtil.GetAllSet().WriteDelimitedTo(stream);
            stream.WriteByte(12);
            TestUtil.GetPackedSet().WriteDelimitedTo(stream);
            stream.WriteByte(34);

            stream.Position = 0;

            TestUtil.AssertAllFieldsSet(TestAllTypes.ParseDelimitedFrom(stream));
            Assert.AreEqual(12, stream.ReadByte());
            TestUtil.AssertPackedFieldsSet(TestPackedTypes.ParseDelimitedFrom(stream));
            Assert.AreEqual(34, stream.ReadByte());
            Assert.AreEqual(-1, stream.ReadByte());
        }
        public void PackedParsing()
        {
            AbstractMessageWrapper.Builder builder = new AbstractMessageWrapper.Builder(TestPackedTypes.CreateBuilder());
            AbstractMessageWrapper         message = builder.MergeFrom(TestUtil.GetPackedSet().ToByteString()).Build();

            TestUtil.AssertPackedFieldsSet((TestPackedTypes)message.WrappedMessage);
        }