public void ExtensionWriterTestMessages() { TestAllExtensionsLite.Builder b = TestAllExtensionsLite.CreateBuilder().SetExtension( UnitTestLiteProtoFile.OptionalForeignMessageExtensionLite, ForeignMessageLite.CreateBuilder().SetC(123).Build()); TestAllExtensionsLite copy, msg = b.Build(); ExtensionRegistry registry = ExtensionRegistry.CreateInstance(); UnitTestLiteProtoFile.RegisterAllExtensions(registry); copy = TestAllExtensionsLite.ParseFrom(msg.ToByteArray(), registry); Assert.AreEqual(msg.ToByteArray(), copy.ToByteArray()); }
public void TestAllTypesModifiedRoundTrip() { TestAllTypesLite msg = TestAllTypesLite.DefaultInstance; msg.ToBuilder() .SetOptionalBool(true) .SetOptionalCord("Hi") .SetOptionalDouble(1.123) .SetOptionalForeignEnum(ForeignEnumLite.FOREIGN_LITE_FOO) .SetOptionalForeignMessage(ForeignMessageLite.CreateBuilder().SetC('c').Build()) .SetOptionalGroup(TestAllTypesLite.Types.OptionalGroup.CreateBuilder().SetA('a').Build()) .SetOptionalImportEnum(ImportEnumLite.IMPORT_LITE_BAR) .SetOptionalInt32(32) .SetOptionalInt64(64) .SetOptionalNestedEnum(TestAllTypesLite.Types.NestedEnum.FOO) .SetOptionalString("SetOptionalString") .AddRepeatedGroup(TestAllTypesLite.Types.RepeatedGroup.CreateBuilder().SetA('a').Build()) .AddRepeatedGroup(TestAllTypesLite.Types.RepeatedGroup.CreateBuilder().SetA('A').Build()) ; TestAllTypesLite copy = TestAllTypesLite.CreateBuilder().MergeFrom(msg.ToByteArray()).Build(); TestUtil.AssertBytesEqual(msg.ToByteArray(), copy.ToByteArray()); }