public void TestConvertFromFullComplete() { TestInteropPerson person = TestInteropPerson.CreateBuilder() .SetId(123) .SetName("abc") .SetEmail("*****@*****.**") .AddRangeCodes(new[] { 1, 2, 3 }) .AddPhone(TestInteropPerson.Types.PhoneNumber.CreateBuilder().SetNumber("555-1234").Build()) .AddPhone(TestInteropPerson.Types.PhoneNumber.CreateBuilder().SetNumber("555-5678").Build()) .AddAddresses( TestInteropPerson.Types.Addresses.CreateBuilder().SetAddress("123 Seseme").SetCity("Wonderland"). SetState("NA").SetZip(12345).Build()) .SetExtension(UnittestExtrasFull.EmployeeId, TestInteropEmployeeId.CreateBuilder().SetNumber("123").Build()) .Build(); Assert.IsTrue(person.IsInitialized); ExtensionRegistry registry = ExtensionRegistry.CreateInstance(); UnittestExtrasLite.RegisterAllExtensions(registry); byte[] fullBytes = person.ToByteArray(); TestInteropPersonLite copy = TestInteropPersonLite.ParseFrom(fullBytes, registry); byte[] liteBytes = copy.ToByteArray(); Assert.AreEqual(fullBytes, liteBytes); }
public void TestRestoreFromOtherType() { TestInteropPerson person = TestInteropPerson.CreateBuilder() .SetId(123) .SetName("abc") .SetEmail("*****@*****.**") .AddRangeCodes(new[] { 1, 2, 3 }) .AddPhone(TestInteropPerson.Types.PhoneNumber.CreateBuilder().SetNumber("555-1234").Build()) .AddPhone(TestInteropPerson.Types.PhoneNumber.CreateBuilder().SetNumber("555-5678").Build()) .AddAddresses( TestInteropPerson.Types.Addresses.CreateBuilder().SetAddress("123 Seseme").SetCity("Wonderland"). SetState("NA").SetZip(12345).Build()) .SetExtension(UnittestExtrasFull.EmployeeId, TestInteropEmployeeId.CreateBuilder().SetNumber("123").Build()) .Build(); Assert.IsTrue(person.IsInitialized); TestEmptyMessage temp = TestEmptyMessage.ParseFrom(person.ToByteArray()); Assert.AreEqual(7, temp.UnknownFields.FieldDictionary.Count); temp = temp.ToBuilder().Build(); Assert.AreEqual(7, temp.UnknownFields.FieldDictionary.Count); ExtensionRegistry registry = ExtensionRegistry.CreateInstance(); UnittestExtrasFull.RegisterAllExtensions(registry); TestInteropPerson copy = TestInteropPerson.ParseFrom(temp.ToByteArray(), registry); Assert.AreEqual(person, copy); Assert.AreEqual(person.ToByteArray(), copy.ToByteArray()); }